:root{color-scheme:dark;--bg-canvas: #101010;--bg-app: #161616;--bg-panel: #1c1c1c;--bg-card: #242424;--bg-hover: #2c2c2c;--bg-active: #333333;--line: #2e2e2e;--line-strong: #3d3d3d;--ink: #f2f2f2;--ink-2: #a3a3a3;--ink-3: #6b6b6b;--accent: #e6a94d;--accent-strong: #f2bd62;--accent-soft: rgba(230, 169, 77, .14);--accent-ink: #241a06;--success: #5fbf7f;--error: #e0655f;--info: #6ea8e0;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: ui-monospace, Menlo, "SF Mono", monospace;--fs-display: 40px;--lh-display: 1.15;--fs-h1: 28px;--lh-h1: 1.25;--fs-h2: 20px;--lh-h2: 1.3;--fs-h3: 16px;--lh-h3: 1.375;--fs-body-l: 14px;--lh-body-l: 1.55;--fs-body: 13px;--lh-body: 1.55;--fs-label: 12px;--lh-label: 1.4;--fs-micro: 11px;--lh-micro: 1.45;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-s: 6px;--radius-m: 10px;--radius-l: 14px;--radius-pill: 999px;--shadow-preview: 0 8px 40px rgba(0, 0, 0, .5);--shadow-modal: 0 20px 60px rgba(0, 0, 0, .6);--shadow-pop: 0 4px 16px rgba(0, 0, 0, .35);--dur-fast: .12s;--dur-base: .18s;--ease: cubic-bezier(.2, .6, .2, 1);--topbar-h: 48px;--panel-left-w: 312px;--panel-right-w: 328px;--focus-ring: 0 0 0 2px var(--bg-app), 0 0 0 4px var(--accent);--touch-min: 44px;--radius-sheet: 16px;--dock-h: 56px;--bg: var(--bg-app);--panel: var(--bg-panel);--card: var(--bg-card);--accent-2: var(--accent-strong)}[data-theme=light]{color-scheme:light;--bg-canvas: #efefec;--bg-app: #fafaf8;--bg-panel: #ffffff;--bg-card: #f4f4f1;--bg-hover: #eaeae6;--bg-active: #e0e0da;--line: #e4e4de;--line-strong: #d2d2ca;--ink: #1a1a1c;--ink-2: #5f5f63;--ink-3: #9a9a9e;--accent-soft: rgba(230, 169, 77, .18);--accent-ink: #241a06;--shadow-preview: 0 8px 32px rgba(0, 0, 0, .12);--shadow-modal: 0 20px 60px rgba(0, 0, 0, .18);--shadow-pop: 0 4px 16px rgba(0, 0, 0, .1);--focus-ring: 0 0 0 2px var(--bg-app), 0 0 0 4px var(--accent)}:focus-visible{outline:none;box-shadow:var(--focus-ring)}:root{--hair: rgba(255,255,255,.065);--hair-2: rgba(255,255,255,.12);--ctl: #2a2a2b;--ctl-hover: #343435;--track: #2c2c2d;--fill: #6a6a6c;--knob: #e8e8e8}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased}.editor{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;gap:16px;height:var(--topbar-h);padding:0 16px;border-bottom:1px solid var(--line);background:var(--panel);flex-shrink:0}.brand{font-weight:600;font-size:15px;display:flex;align-items:center;gap:8px}.logo{width:24px;height:24px;border-radius:7px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:var(--accent-ink);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}.beta{font-size:11px;color:var(--ink-2);border:1px solid var(--line);border-radius:999px;padding:1px 7px;font-weight:500}.filelabel{flex:1;color:var(--ink-2);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topactions{display:flex;gap:8px}.btn{background:var(--accent);color:var(--accent-ink);border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:filter .15s}.btn:hover:not(:disabled){filter:brightness(1.08)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.match{width:100%;margin:8px 0 16px}.body{display:grid;grid-template-columns:var(--panel-left-w) 1fr var(--panel-right-w);flex:1;min-height:0}.panel{background:var(--panel);overflow-y:auto;padding:16px}.panel.left{border-right:1px solid var(--line)}.panel.right{border-left:1px solid var(--line)}.section-title{font-size:12px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.05em;margin:18px 0 10px;display:flex;justify-content:space-between;align-items:center}.section-title:first-child{margin-top:0}.mini{font-size:10px;color:#5fbf7f;text-transform:none;letter-spacing:0}.mini.warn{color:var(--ink-2)}.upload{display:block;border:1px dashed var(--line-strong);border-radius:var(--radius-m);padding:12px;text-align:center;font-size:12px;color:var(--ink-2);cursor:pointer;background:var(--card);transition:border-color .15s,color .15s}.upload:hover{border-color:var(--accent);color:var(--ink)}.upload input{display:none}.upload.big{margin-top:16px;padding:14px 28px;color:var(--ink);border-color:var(--accent)}.styles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stylecard{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);padding:6px;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:border-color .15s,transform .1s}.stylecard:hover{border-color:var(--line-strong)}.stylecard.active{border-color:var(--accent)}.stylecard.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:var(--accent)}.cover{width:100%;aspect-ratio:4 / 3;border-radius:var(--radius-s);object-fit:cover;display:block}.sname{font-size:12px;color:var(--ink);text-align:center}.stage-wrap{display:flex;flex-direction:column;min-height:0;background:var(--bg-canvas)}.canvas-box{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:20px;position:relative}.preview{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius-s);box-shadow:var(--shadow-preview)}.preview.hidden{opacity:0;position:absolute;pointer-events:none}.empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.empty-inner{text-align:center;color:var(--ink-2)}.empty-icon{font-size:40px;margin-bottom:8px}.stage-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-2);flex-shrink:0}.toggle{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.glstatus{font-family:ui-monospace,Menlo,monospace;font-size:11px}.slider-row{margin-bottom:14px}.slabel{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-2);margin-bottom:6px}.sval{color:var(--ink);font-variant-numeric:tabular-nums}input[type=range]{width:100%;accent-color:var(--fill);cursor:pointer}.hintbox{margin-top:16px;font-size:12px;line-height:1.6;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px 12px}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:120}.modal{width:400px;max-width:calc(100vw - 40px);background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 20px 60px #0009}.modal h3{margin:0 0 16px;font-size:16px}.field{margin-bottom:14px}.field label{display:block;font-size:12px;color:var(--ink-2);margin-bottom:6px}.field input[type=text],.field input:not([type]){width:100%;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:var(--ink);font-size:13px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg button{background:transparent;border:none;color:var(--ink-2);padding:6px 18px;font-size:13px;cursor:pointer}.seg button.on{background:var(--accent);color:var(--accent-ink);font-weight:600}.export-note{font-size:11px;line-height:1.6;color:var(--ink-2);margin:4px 0 16px}.modal-actions{display:flex;gap:10px}.modal-actions .btn{flex:1}.modal-footer{margin-top:10px;text-align:right}.linkbtn{background:transparent;border:none;color:var(--ink-2);font-size:12px;cursor:pointer;padding:4px 6px}.linkbtn:hover{color:var(--ink)}.busy{margin-top:12px;font-size:12px;color:var(--accent);text-align:center}@media (max-width: 1024px) and (min-width: 769px){.body{grid-template-columns:232px 1fr 260px}}@media (max-width: 768px){html,body{overflow-x:hidden}.editor,.batch{height:auto;min-height:100vh}.body,.batch-body{display:block}.panel,.batch-side{overflow:visible;border-left:none;border-right:none;border-bottom:1px solid var(--line)}.stage-wrap{min-height:52vh}.canvas-box{min-height:40vh}.topbar{flex-wrap:wrap;height:auto;padding:8px 12px;gap:8px}.filelabel{order:3;flex-basis:100%}.topactions{flex-wrap:wrap}.styles{grid-template-columns:repeat(3,1fr)}.batch-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.btn,.linkbtn,.seg button,.upload,.stylecard{min-height:40px}input[type=range]{height:40px}.modal{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:86vh;overflow-y:auto}.viewer{max-width:94vw}.viewer img{max-width:92vw;max-height:46vh}.preset-item{flex-wrap:wrap}.thumb-del{width:40px;height:40px;font-size:18px}.thumb-retry{min-height:40px}}.batch{display:flex;flex-direction:column;height:100vh}.batch-body{display:grid;grid-template-columns:300px 1fr;flex:1;min-height:0}.batch-side{background:var(--panel);border-right:1px solid var(--line);overflow-y:auto;padding:16px}.batch-main{background:var(--bg-canvas);overflow-y:auto;padding:20px;position:relative}.batch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.batch-thumb{position:relative;aspect-ratio:4 / 3;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);overflow:hidden;cursor:pointer}.batch-thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--ink-3);font-size:12px}.thumb-del{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;border:none;background:#0000008c;color:#fff;cursor:pointer;font-size:14px;line-height:1}.batch-name{font-size:12px;color:var(--ink-2);margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.batch-progress{position:relative;margin-top:16px;height:34px;background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;align-items:center}.batch-progress .bar{position:absolute;left:0;top:0;bottom:0;background:var(--accent-soft)}.batch-progress span{position:relative;padding-left:12px;font-size:12px;color:var(--ink-2)}.viewer{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-l);overflow:hidden;max-width:90vw;max-height:88vh;display:flex;flex-direction:column;box-shadow:var(--shadow-modal)}.viewer img{max-width:88vw;max-height:78vh;object-fit:contain;display:block;background:#000}.viewer-bar{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;font-size:12px;color:var(--ink-2)}.batch-errors{background:#e0655f1a;border:1px solid var(--error);border-radius:8px;padding:8px 12px;margin-bottom:14px;font-size:12px;color:var(--ink-2)}.batch-errors-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;color:var(--error);font-weight:600}.batch-errors ul{margin:0;padding-left:18px}.batch-errors li{line-height:1.7}.batch-errors b{color:var(--ink);font-weight:600}.over-badge{position:absolute;top:6px;left:6px;background:var(--accent);color:var(--accent-ink);font-size:10px;font-weight:700;border-radius:4px;padding:1px 5px}.thumb-retry{position:absolute;bottom:6px;left:50%;transform:translate(-50%);background:var(--error);color:#fff;border:none;border-radius:6px;font-size:12px;padding:4px 10px;cursor:pointer}.batch-card[draggable]{cursor:grab}.viewer img{max-height:54vh}.viewer-panel{border-top:1px solid var(--line);padding:12px 14px;max-height:42vh;overflow-y:auto}.viewer-sliders{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;margin:8px 0}.viewer-sliders .slider-row{margin-bottom:6px}.viewer-actions{display:flex;gap:10px;align-items:center;margin-top:6px;flex-wrap:wrap}.auth-error{color:var(--error);font-size:12px;margin:-2px 0 12px}.auth-switch{margin-top:10px;text-align:center}.topactions .btn{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-url{word-break:break-all;color:var(--accent);font-size:12px;background:var(--bg-app);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-family:var(--font-mono)}.preset-panel{margin-top:8px}.preset-save{display:flex;gap:8px;margin-bottom:8px}.preset-save input{flex:1;min-width:0;background:var(--bg-app);border:1px solid var(--line);border-radius:8px;padding:6px 8px;color:var(--ink);font-size:12px}.preset-save .btn{padding:6px 10px;white-space:nowrap}.preset-list{display:flex;flex-direction:column;gap:6px}.preset-item{display:flex;justify-content:space-between;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12px}.preset-item .pname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.preset-item .pacts{display:flex;gap:6px}.video-stage{display:flex;justify-content:center;align-items:center;background:var(--bg-canvas);border-radius:10px;padding:12px}.video-stage .preview{max-width:100%}.video-bar{display:flex;align-items:center;gap:12px;margin-top:12px}.video-bar input[type=range]{flex:1}.video-bar .mono{font-family:var(--font-mono);font-size:12px;color:var(--ink-2);white-space:nowrap}.video-bar .slabel input[type=number]{background:var(--bg-app);border:1px solid var(--line);border-radius:6px;color:var(--ink);padding:3px 6px;margin-left:6px}.preset-item{gap:8px;border-radius:var(--radius-s)}.pdot{width:16px;height:16px;border-radius:4px;flex:0 0 auto;border:1px solid var(--line-strong)}.preset-item .pname{flex:1}.preset-item .pacts{flex-wrap:wrap;justify-content:flex-end;gap:4px}.mobile-dock,.sheet-overlay{display:none}@media (max-width: 1024px){.body{grid-template-columns:240px 1fr}.panel.right{position:fixed;top:0;right:0;height:100dvh;width:320px;max-width:88vw;z-index:90;transform:translate(100%);transition:transform .22s var(--ease);box-shadow:var(--shadow-pop)}.panel.right.open{transform:translate(0)}}@media (max-width: 768px){.mobile-dock{display:flex}.body{display:block;padding-bottom:64px}.panel.left,.panel.right{position:fixed;left:0;right:0;bottom:0;top:auto;width:100%;height:auto;max-height:56vh;overflow-y:auto;border-radius:16px 16px 0 0;border:1px solid var(--line);border-bottom:none;transform:translateY(105%);transition:transform .22s var(--ease);z-index:90;padding:12px 14px calc(14px + env(safe-area-inset-bottom));box-shadow:var(--shadow-modal)}.panel.left.open,.panel.right.open{transform:translateY(0)}.stage-wrap{min-height:62vh;padding-bottom:52px}.topbar{height:auto;min-height:52px;flex-wrap:wrap;padding:6px 10px;gap:8px}.filelabel{order:3;flex-basis:100%}.btn{min-height:44px}.topactions{flex-wrap:wrap}.preview{max-height:60vh}.modal-mask{align-items:flex-end}.modal{width:100%;max-width:100%;border-radius:16px 16px 0 0;max-height:90dvh;overflow:auto;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.batch-body{display:block}.batch-side{position:static;width:auto;border-right:none;border-bottom:1px solid var(--line);max-height:none}.batch-main{min-height:60vh}.video-stage .preview{max-height:46vh}input[type=range]{height:44px}.viewer img{max-height:50vh}}.mobile-dock{position:fixed;left:0;right:0;bottom:0;height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--panel);border-top:1px solid var(--line);z-index:85}.dock-tab{flex:1;min-height:48px;background:none;border:none;color:var(--ink-2);font-size:13px;position:relative;cursor:pointer}.dock-tab.active{color:var(--accent)}.dock-tab.active:after{content:"";position:absolute;left:50%;transform:translate(-50%);bottom:6px;width:24px;height:2px;border-radius:2px;background:var(--accent)}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:88}.sheet-overlay.show{display:block}.m-sheet-close,.m-more{display:none}@media (max-width: 768px){.m-more{display:inline-flex;align-items:center}.topactions .btn.secondary{display:none}.topactions.more-open .btn.secondary{display:inline-flex}.m-sheet-close{display:flex;align-items:center;justify-content:center;position:absolute;top:8px;right:10px;width:32px;height:32px;background:var(--bg-hover);border:none;border-radius:50%;color:var(--ink);font-size:18px;line-height:1;z-index:2}.panel.left,.panel.right,.panel.left .m-sheet-close,.panel.right .m-sheet-close{position:fixed}}@media (max-width: 768px){.upload{min-height:44px;display:flex;align-items:center;justify-content:center}.btn{min-height:44px}.linkbtn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:8px 10px}.seg button{min-height:44px;padding:8px 16px}.preset-item{min-height:48px}.preset-item .linkbtn{min-height:40px}.thumb-del{width:40px;height:40px;font-size:18px}.thumb-retry{min-height:40px;padding:8px 14px}.stylecard{min-height:44px}.slider-row{padding:4px 0}.slider-row .slabel{min-height:24px}.batch-main{padding-bottom:64px}.batch-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.batch-side .styles{grid-template-columns:repeat(3,1fr)}.video-bar{flex-wrap:wrap}.video-bar .btn{flex:1}}@media (min-width: 769px){.mobile-dock{display:none!important}}@media (max-width: 768px){.m-more{min-width:44px}.batch-side{position:fixed;left:0;right:0;bottom:0;top:auto;width:100%;max-height:64vh;overflow-y:auto;border-radius:16px 16px 0 0;border:1px solid var(--line);border-bottom:none;transform:translateY(105%);transition:transform .22s var(--ease);z-index:90;padding:12px 14px calc(14px + env(safe-area-inset-bottom));box-shadow:var(--shadow-modal)}.batch-side.open{transform:translateY(0)}.batch-main{padding-bottom:64px}.batch-topbar-extra{display:inline-flex}}@media (min-width: 769px){.batch-topbar-extra{display:none}}.tablet-adjust{display:none}@media (min-width: 769px) and (max-width: 1024px){.tablet-adjust{display:inline-flex;min-height:44px;min-width:44px}}@media (max-width: 1024px){.m-sheet-close{display:flex;align-items:center;justify-content:center;position:absolute;top:8px;right:10px;width:44px;height:44px;background:var(--bg-hover);border:none;border-radius:50%;color:var(--ink);font-size:18px;line-height:1;z-index:2}}input[type=range]{touch-action:none}@media (max-width: 1024px){.topbar{padding-top:calc(6px + env(safe-area-inset-top));padding-left:calc(10px + env(safe-area-inset-left));padding-right:calc(10px + env(safe-area-inset-right))}.panel.left,.panel.right{padding-bottom:calc(14px + env(safe-area-inset-bottom))}}@media (orientation: landscape) and (max-width: 1024px){.stage-wrap{min-height:46vh}.panel.left,.panel.right{max-height:74vh}.mobile-dock{height:calc(56px + env(safe-area-inset-bottom))}.dock-tab{min-height:44px}.preview{max-height:44vh}}@media (max-width: 1024px){.btn{min-height:44px}.upload{min-height:44px;display:flex;align-items:center;justify-content:center}.linkbtn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.seg button,.stylecard{min-height:44px}input[type=range]{height:44px}}@media (max-height: 620px){.modal-mask{align-items:center}.modal{max-height:calc(100dvh - 16px);overflow-y:auto}}@media (orientation: landscape) and (max-width: 1024px){.modal{max-height:calc(100dvh - 16px);overflow-y:auto;width:min(420px,92vw)}}@media (max-width: 1024px){.btn{min-width:44px}.modal .field input:not([type=range]){min-height:44px}}.editor-notice,.batch-notice{color:var(--error);font-size:12px;line-height:1.5;margin:6px 0}.degraded-banner{position:fixed;top:8px;left:50%;transform:translate(-50%);z-index:200;display:flex;align-items:flex-start;gap:10px;width:min(680px,calc(100vw - 24px));background:var(--bg-card);border:1px solid var(--line);border-left:3px solid var(--ink-3);border-radius:10px;padding:10px 12px;box-shadow:var(--shadow-pop)}.net-status{font-size:11px;color:var(--ink-2);border:1px solid var(--line);border-radius:999px;padding:3px 8px;white-space:nowrap}.degraded-copy{flex:1}.degraded-copy b{display:block;font-size:13px;margin-bottom:2px}.degraded-copy p{margin:0;font-size:12px;color:var(--ink-2);line-height:1.5}.online-restored{position:fixed;top:8px;left:50%;transform:translate(-50%);z-index:200;background:var(--bg-card);border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:12px;box-shadow:var(--shadow-pop)}.heic-error{background:#e0655f1f;border:1px solid var(--error);border-radius:8px;padding:10px 12px;margin:8px 0;font-size:12px}.heic-error b{display:block;color:var(--error);margin-bottom:4px}.heic-error p{margin:0 0 8px;line-height:1.5}.batch-skip-notice{font-size:12px;color:var(--ink-2);margin:8px 0}.degraded-banner{top:56px;pointer-events:none}.degraded-banner .btn{pointer-events:auto}.online-restored{top:56px;pointer-events:none}@media (max-width: 768px){.degraded-banner,.online-restored{top:calc(88px + env(safe-area-inset-top))}}@media (max-width: 1024px){.modal .linkbtn{min-width:44px;min-height:44px}}.ref-card{display:flex;gap:8px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);padding:8px}.ref-thumb{width:56px;height:56px;object-fit:cover;border-radius:6px;flex:0 0 auto;border:1px solid var(--line-strong)}.ref-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.ref-name{font-size:12px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ref-acts{display:flex;gap:6px}.ref-replace{cursor:pointer}.compare-hold{border-color:var(--accent);color:var(--accent)}.compare-hold:active{background:var(--accent-soft)}.compare-hold{touch-action:none;-webkit-user-select:none;user-select:none}.ref-thumb{width:88px;height:66px}@media (max-width: 768px){.ref-thumb{width:72px;height:54px}}.compare-hold[aria-pressed=true]{background:var(--bg-active)}.canvas-box{position:relative}.orig-pill{position:absolute;top:12px;left:12px;background:#0000008c;color:#fff;font-size:12px;padding:3px 10px;border-radius:999px;z-index:5}.stage-toast{color:var(--accent);font-size:12px}.editor-topbar{gap:10px}.editor-topbar .filelabel{flex:0 1 auto;max-width:42vw;color:var(--ink-2);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-spacer{flex:1 1 auto}.tb-group{display:inline-flex;align-items:center;gap:6px}.tb-sep{width:1px;height:20px;background:var(--line);margin:0 4px}.btn.tb-export{background:transparent;color:var(--ink);border:1px solid rgba(255,255,255,.12);font-weight:500}.btn.tb-export:hover{background:#ffffff0f}.iconbtn{width:32px;height:32px;min-height:32px;padding:0;border-radius:8px;background:transparent;border:1px solid var(--line);color:var(--ink);font-size:15px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.iconbtn:hover:not(:disabled){background:var(--bg-hover)}.iconbtn:disabled{opacity:.4;cursor:not-allowed}.more-wrap{position:relative;display:inline-flex}.more-menu{position:absolute;right:0;top:40px;width:204px;z-index:60;background:var(--bg-card);border:1px solid var(--line);border-radius:10px;padding:6px;box-shadow:var(--shadow-pop);display:flex;flex-direction:column;gap:2px}.more-menu button{width:100%;text-align:left;background:transparent;border:none;color:var(--ink);font-family:inherit;font-size:13px;padding:9px 10px;border-radius:6px;cursor:pointer;min-height:40px}.more-menu button:hover:not(:disabled){background:var(--bg-hover)}.more-menu button:disabled{opacity:.5;cursor:default}.more-menu .menu-danger{color:var(--error)}.more-menu .menu-hint{color:var(--ink-3);font-size:11px;cursor:default}.phead{font-size:12px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:8px;margin-bottom:10px}.phead .num{width:18px;height:18px;border-radius:50%;background:var(--ctl);color:var(--ink-2);font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.actionbar{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--panel);border-bottom:1px solid var(--line);flex-shrink:0}.refchip{display:inline-flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:12px;color:var(--ink-2);cursor:pointer;font-family:inherit;max-width:42%;white-space:nowrap;overflow:hidden;min-height:34px}.refchip b{color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis}.refchip:hover{border-color:var(--line-strong)}.btn.match-cta{height:40px;min-height:40px;padding:0 20px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:8px}.applied{font-size:12px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fold{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}.foldhead{width:100%;display:flex;align-items:center;justify-content:space-between;background:transparent;border:none;color:var(--ink);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;padding:6px 0;min-height:34px}.fold-arrow{color:var(--ink-3)}.foldbody{margin-top:8px}.m-match-fab{display:none}@media (max-width: 768px){.editor-topbar{flex-wrap:nowrap;height:auto;min-height:52px;gap:8px;padding:6px 10px}.editor-topbar .brand{font-size:0;gap:0}.editor-topbar .brand .logo{font-size:14px}.editor-topbar .beta{display:none}.editor-topbar .filelabel{order:0;flex:1 1 auto;max-width:none;min-width:0}.editor-topbar .tb-export{flex:0 0 auto}.actionbar{display:none}.m-match-fab{display:inline-flex;align-items:center;justify-content:center;position:fixed;left:12px;right:12px;bottom:calc(66px + env(safe-area-inset-bottom));height:48px;border-radius:12px;z-index:86;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:15px;border:none;box-shadow:0 8px 24px #00000073;font-family:inherit}.m-match-fab:disabled{opacity:.5}.stage-wrap{padding-bottom:calc(126px + env(safe-area-inset-bottom))}.editor .body{padding-bottom:0}}@media (max-width: 1024px){.editor-topbar .iconbtn{width:44px;height:44px;min-height:44px;font-size:17px}.more-menu button{min-height:44px}.ref-acts .linkbtn{min-width:44px;min-height:44px}.stage-bar .toggle{min-height:44px;min-width:44px;padding:4px 2px}}.editor.modal-open .m-match-fab{display:none!important}.recommend-row{margin-top:14px}.recommend-title{font-size:12px;color:var(--ink);font-weight:600;display:flex;align-items:center;gap:8px;margin-bottom:8px}.recommend-title .mini{color:var(--accent)}.recommend-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.rec-card{background:var(--card);border:1px solid var(--accent-soft);border-radius:var(--radius-m);padding:4px;cursor:pointer;display:flex;flex-direction:column;text-align:left;font-family:inherit}.rec-card:hover{border-color:var(--accent)}.rec-card.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.rec-card .cover{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:6px;display:block}.rec-card .sname{font-size:11px;color:var(--ink);text-align:center;padding:3px 0 1px}.rec-reason{font-size:10px;color:var(--ink-3);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.refchip{min-height:44px}@media (max-width: 1024px),(pointer: coarse){.btn.match-cta{min-height:44px;height:44px}}.preset-sync{font-size:11px;color:var(--ink-2);margin:2px 0 8px}.preset-sync.warn{color:var(--accent)}.collection-bar{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px;align-items:center}.collection-item{display:inline-flex;align-items:center;gap:2px}.collection-chip{background:var(--card);border:1px solid var(--line);color:var(--ink-2);border-radius:999px;padding:4px 10px;font-size:11px;cursor:pointer;font-family:inherit}.collection-chip.on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.collection-mini{font-size:10px;padding:2px 4px;color:var(--ink-3)}.pcoll{font-size:10px;color:var(--ink-2);background:var(--bg-active);border-radius:999px;padding:1px 8px;white-space:nowrap;flex:0 0 auto}@media (max-width: 1024px){.collection-chip{min-height:44px;display:inline-flex;align-items:center}.collection-mini{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}}.section-actions{display:inline-flex;align-items:center;gap:10px}.explore-entry{color:var(--accent);white-space:nowrap}.dot-ok{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--success);margin-right:4px;vertical-align:middle}.dot-off{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--ink-3);margin-right:4px;vertical-align:middle}.explore-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;background:var(--bg-app);display:flex;flex-direction:column}.explore-top{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}.explore-title{font-weight:600;font-size:16px}.explore-count{margin-left:auto;color:var(--ink-3);font-size:12px}.explore-back{min-height:36px}.explore-tags{display:flex;gap:8px;padding:12px 16px;flex-wrap:wrap;overflow-x:auto}.explore-tag{background:var(--card);border:1px solid var(--line);color:var(--ink-2);border-radius:999px;padding:6px 14px;font-size:12px;cursor:pointer;font-family:inherit;white-space:nowrap}.explore-tag.on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.explore-offline{margin:0 16px 8px;font-size:12px;color:var(--ink-3)}.explore-grid{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:16px;align-content:start}.explore-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);padding:6px;cursor:pointer;text-align:left;font-family:inherit;transition:border-color .12s}.explore-card:hover{border-color:var(--line-strong)}.explore-card.active{border-color:var(--accent)}.explore-cover{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-s);display:block;transition:transform .12s}.explore-card:hover .explore-cover{transform:scale(1.02)}.explore-name{font-size:12px;color:var(--ink);margin-top:6px;font-weight:600}.explore-mood{font-size:11px;color:var(--ink-3);line-height:1.4;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.explore-detail-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:151}.explore-detail{position:fixed;top:0;right:0;bottom:0;width:360px;max-width:92vw;background:var(--bg-panel);border-left:1px solid var(--line);z-index:152;padding:18px;display:flex;flex-direction:column;gap:10px;overflow-y:auto}.explore-detail-close{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;border:none;background:var(--bg-hover);color:var(--ink);font-size:18px;cursor:pointer}.explore-detail-img{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:var(--radius-m)}.explore-detail-name{font-size:16px;font-weight:600}.explore-detail-desc{font-size:12px;color:var(--ink-2);line-height:1.6}.explore-detail-tags{display:flex;gap:6px;flex-wrap:wrap}.explore-tag-pill{font-size:11px;color:var(--ink-2);border:1px solid var(--line);border-radius:999px;padding:2px 10px}.explore-detail-actions{display:flex;gap:10px;margin-top:6px}.explore-detail-actions .btn{flex:1;min-height:44px}.explore-pager{display:flex;justify-content:space-between;margin-top:6px}@media (max-width: 768px){.explore-grid{grid-template-columns:repeat(3,1fr);gap:10px;padding:12px}.explore-detail{top:auto;left:0;right:0;bottom:0;width:100%;max-width:100%;height:auto;max-height:80vh;border-left:none;border-top:1px solid var(--line);border-radius:16px 16px 0 0;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.explore-tag{min-height:44px;display:inline-flex;align-items:center}.explore-back{min-height:44px}}@media (max-width: 480px){.explore-grid{grid-template-columns:repeat(2,1fr)}}.detail-sub{font-size:11px;color:var(--ink-2);text-transform:none;letter-spacing:.02em;margin:12px 0 8px}.detail-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:6px;vertical-align:middle}.detail-badge{display:inline-block;font-size:11px;color:var(--ink-3);border:1px solid var(--line);border-radius:999px;padding:1px 8px;margin-top:4px}.slider-row .detail-badge{margin-left:0}.suggest-row{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);padding:10px 12px;margin-bottom:12px}.suggest-title{font-size:12px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.suggest-basis{font-size:10px;color:var(--ink-3);border:1px solid var(--line);border-radius:999px;padding:2px 8px;font-weight:400}.suggest-cards{display:flex;flex-direction:column;gap:6px}.suggest-card{background:var(--bg-panel);border:1px solid var(--line);border-radius:8px;padding:8px 10px;cursor:pointer;text-align:left;font-family:inherit;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px}.suggest-card:hover{border-color:var(--accent)}.suggest-reason{font-size:12px;color:var(--ink)}.suggest-val{font-size:11px;color:var(--accent);white-space:nowrap}@media (max-width: 1024px){.suggest-card{min-height:44px}}.ai-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}.ai-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink);cursor:pointer}.ai-status{font-size:11px;color:var(--ink-3)}.ai-fetch{min-height:32px;padding:0 10px;font-size:12px}.ai-hint{font-size:10px;color:var(--ink-3);line-height:1.5;margin-top:6px}.ai-msg{font-size:11px;color:var(--ink-2);line-height:1.5;margin-top:6px}.ai-suggest{margin-top:10px;padding-top:8px;border-top:1px dashed var(--line)}.ai-badge{font-size:10px;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:1px 8px}.ai-card{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--bg-panel);border:1px solid var(--line);border-radius:8px;padding:8px 10px}.ai-card:hover{border-color:var(--accent)}.suggest-val.as-btn{background:var(--accent);color:var(--accent-ink);border:none;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit}.suggest-val.muted{color:var(--ink-3)}@media (max-width: 1024px){.ai-fetch,.ai-toggle,.ai-card{min-height:44px}}.gen-area{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gen-area .ai-toggle{font-size:12px;color:var(--ink)}.gen-area input{flex:1;min-width:140px;font-size:12px;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink)}.gen-area .btn.gen-btn{min-height:32px;padding:0 10px;font-size:12px}.gen-preview{margin-top:6px;display:flex;align-items:center;gap:8px}.gen-preview img{width:72px;height:54px;object-fit:cover;border-radius:6px;border:1px solid var(--line)}.gen-err{font-size:11px;color:var(--error);margin-top:6px}@media (max-width: 1024px){.gen-area .btn.gen-btn{min-height:44px}}.ref-style{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:2px 0 4px}.ref-style-name{font-size:12px;color:var(--ink);font-weight:600}.ref-style-src{font-size:10px;color:var(--ink-3);border:1px solid var(--line);border-radius:999px;padding:1px 8px}.ref-style-acts,.ref-style-edit{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ref-style-edit input{flex:1;min-width:120px;font-size:12px;padding:4px 8px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink)}@media (max-width: 1024px){.ref-style-acts .linkbtn,.ref-style-edit .linkbtn{min-height:44px;min-width:44px}}.i{stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;display:block;flex:0 0 auto}.b{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;font-weight:500;border:1px solid transparent;background:transparent;color:var(--ink);cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s}.b.s32{height:32px;padding:0 12px;font-size:12px;border-radius:7px}.b.s40{height:40px;padding:0 16px;font-size:13px;border-radius:9px}.b.s48{height:48px;padding:0 22px;font-size:14px;border-radius:11px}.b.primary{background:var(--accent);color:var(--accent-ink);font-weight:600}.b.primary:hover{background:var(--accent-strong)}.b.quiet{border-color:#ffffff1f;color:var(--ink)}.b.quiet:hover{background:#ffffff0f}.b.ghost{color:var(--ink-2)}.b.ghost:hover{background:#ffffff0f;color:var(--ink)}.b:disabled{opacity:.34;cursor:not-allowed}.b:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.v3-panel{background:linear-gradient(#161617,#121213);border:1px solid rgba(255,255,255,.065);border-radius:14px;padding:20px;box-shadow:inset 0 1px #ffffff0b,inset 0 -1px #0000004d,0 24px 60px #00000080}.v3-panel h3{font-size:15px;font-weight:600;color:#f4f4f4;margin:0 0 4px}.v3-sub{font-size:12px;color:#9d9d9f;margin:0 0 16px;line-height:1.6}.v3-sec{border-top:1px solid rgba(255,255,255,.065);padding:14px 0 2px}.v3-sec:first-of-type{border-top:0;padding-top:0}.v3-sec-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#9d9d9f;margin-bottom:10px}.v3-sec-title .i{color:#636365}.v3-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.v3-card{background:#1d1d1e;border:1px solid rgba(255,255,255,.065);border-radius:11px;padding:12px;min-width:0;box-shadow:inset 0 1px #ffffff0b}.v3-card-h{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#f4f4f4;white-space:nowrap}.v3-card-p{font-size:12px;color:#636365;margin:4px 0 8px;line-height:1.5}.v3-field{display:grid;gap:6px}.v3-field>label{font-size:12px;color:#9d9d9f}.v3-input{width:100%;height:36px;padding:0 10px;background:#0b0b0c;border:1px solid rgba(255,255,255,.065);border-radius:7px;color:#f4f4f4;font-size:13px;font-family:inherit}.v3-input:focus{outline:none;border-color:#fff3}.v3-status{display:flex;align-items:center;gap:8px;font-size:12px;color:#9d9d9f;border-top:1px solid rgba(255,255,255,.065);padding-top:12px;margin-top:12px}.v3-dot{width:6px;height:6px;border-radius:50%;background:#636365;flex:0 0 auto}.v3-status.dirty .v3-dot{background:var(--accent)}.v3-status.ok .v3-dot{background:#5cc98d}.v3-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}@media (max-width: 768px){.v3-row{grid-template-columns:1fr}.v3-panel{padding:16px}}.ref-card{display:block;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.065);background:#1d1d1e;box-shadow:inset 0 1px #ffffff0b}.ref-card .ref-thumb{width:100%;aspect-ratio:16 / 10;object-fit:cover;display:block}.ref-card .ref-meta{padding:10px 12px 12px;display:flex;flex-direction:column;gap:6px}.ref-card .ref-style{order:1;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.ref-card .ref-style-name{font-size:13.5px;font-weight:600;color:var(--ink)}.ref-card .ref-style-src{font-size:11px;color:var(--ink-3)}.ref-card .ref-name{order:2;font-size:11px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ref-card .ref-style-acts,.ref-card .ref-acts{order:3;display:flex;gap:12px}.ref-card .ref-style-acts .linkbtn,.ref-card .ref-acts .linkbtn{font-size:12px;color:var(--ink-3)}.ref-card .ref-style-acts .linkbtn:hover,.ref-card .ref-acts .linkbtn:hover{color:var(--ink)}@media (max-width: 768px){.m-match-fab{left:50%;right:auto;transform:translate(-50%);bottom:calc(68px + env(safe-area-inset-bottom));width:52px;height:52px;padding:0;border-radius:50%;box-shadow:0 4px 18px #e6a94d47}.m-match-fab .fab-label{display:none}.m-match-fab:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px}.stage-wrap{padding-bottom:calc(134px + env(safe-area-inset-bottom))}}.btn{height:36px;padding:0 14px;border-radius:9px;font-size:13px;font-weight:500;border:1px solid transparent;background:transparent;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .12s,border-color .12s,color .12s}.btn:hover{background:#ffffff0f}.btn.secondary,.btn.ghost{border-color:#ffffff1f;background:transparent;color:var(--ink-2)}.btn.secondary:hover,.btn.ghost:hover{color:var(--ink);background:#ffffff0f}.btn.match,.btn.match-cta{background:var(--accent);color:var(--accent-ink);font-weight:600;border-color:transparent}.btn.match:hover,.btn.match-cta:hover{background:var(--accent-strong)}.btn:disabled{opacity:.34}.btn.match:disabled{opacity:.34}.app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;opacity:.028;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/></filter><rect width='120' height='120' filter='url(%23n)'/></svg>");mix-blend-mode:overlay}.batch-side,.panel.left,.panel.right{border-right-color:#fff1}.batch-side{background:#161617}.batch-grid,.batch-canvas{background:#0b0b0c}.batch-item,.batch-cell{background:#1d1d1e;border:1px solid rgba(255,255,255,.065);border-radius:10px;box-shadow:inset 0 1px #ffffff0b}.batch-topbar,.editor-topbar{border-bottom-color:#fff1}.topbar{border-bottom:1px solid rgba(255,255,255,.065)}.section-title{color:var(--ink-2);font-weight:600;letter-spacing:.01em}.stage-bar{border-top:1px solid rgba(255,255,255,.065);color:var(--ink-3)}.mobile-dock{border-top:1px solid rgba(255,255,255,.065);background:#121213eb}.dock-tab{color:var(--ink-3)}.dock-tab.active{color:var(--ink)}.dock-tab.active:after{background:var(--accent)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:18px;background:transparent;accent-color:var(--fill)}input[type=range]::-webkit-slider-runnable-track{height:3px;border-radius:2px;background:var(--track)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;border-radius:50%;background:var(--knob);margin-top:-4px;box-shadow:0 1px 2px #0000008c}input[type=range]:hover::-webkit-slider-thumb{background:#fff}input[type=range]::-moz-range-track{height:3px;border-radius:2px;background:var(--track)}input[type=range]::-moz-range-thumb{width:11px;height:11px;border:none;border-radius:50%;background:var(--knob)}@media (min-width: 1025px){.styles-grid{grid-template-columns:repeat(3,1fr)!important;gap:10px!important}.stylecard .cover,.stylecard img.cover{aspect-ratio:4 / 3}}.stage-wrap{padding:14px 16px 10px}.canvas-box{border-radius:12px}.section-title{margin:16px 0 8px}.panel.left>.section-title:first-of-type{margin-top:4px}.slider-row,.field-range{font-variant-numeric:tabular-nums}:root{--st-950:#07080B;--st-900:#0C0E14;--st-850:#11141C;--st-800:#161924;--st-750:#1D2230;--st-700:#262C3E;--st-600:#3A4259;--st-muted:#68738D;--st-light:#9EA8C0;--st-ice:#E2E8F5;--st-amber:#E5A93C;--st-amber-2:#F5B947}body,.app{background:var(--st-950)!important;color:var(--st-ice)}.topbar,.editor-topbar{background:var(--st-950)!important;border-bottom:1px solid rgba(255,255,255,.05)!important;height:56px;gap:12px;padding:0 16px!important}.topbar .brand,.editor-topbar .brand{font-size:13px;font-weight:600;letter-spacing:.01em}.topbar .brand .logo,.editor-topbar .brand .logo{width:22px;height:22px;border-radius:7px;background:linear-gradient(160deg,#ffc46b,#d9942e);color:#241802;font-weight:800;font-size:12px;display:inline-grid;place-items:center}.topbar .brand .beta,.editor-topbar .brand .beta{background:#e5a93c24;color:var(--st-amber);border:1px solid rgba(229,169,60,.35);font-size:9.5px;font-weight:700;letter-spacing:.06em;padding:2px 6px;border-radius:5px}.panel.left,.panel.right,.batch-side{background:var(--st-950)!important;border-color:#ffffff0d!important}.panel.left{border-right:1px solid rgba(255,255,255,.05)!important}.panel.right{border-left:1px solid rgba(255,255,255,.05)!important}.stage-wrap{background-color:var(--st-950)!important;background-image:radial-gradient(rgba(255,255,255,.055) 1px,transparent 1px);background-size:16px 16px;padding:18px 20px 10px}.canvas-box{background:var(--st-900);border:1px solid rgba(255,255,255,.06);border-radius:12px;box-shadow:0 30px 80px #0000008c}.panel.left,.panel.right{position:relative}.panel.left:before,.panel.right:before{display:block;font-size:10.5px;font-weight:700;letter-spacing:.1em;color:var(--st-muted);text-transform:uppercase;margin:0 0 12px}.panel.left:before{content:"① 参考与风格"}.panel.right:before{content:"② 参数微调"}.panel.left .section-title,.panel.right .section-title{font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--st-light);text-transform:none;margin:18px 0 10px}.panel.left .section-title:before,.panel.right .section-title:before{content:none}.styles{grid-template-columns:repeat(3,1fr)!important;gap:10px!important}.stylecard .lut-no{position:absolute;right:7px;top:7px;font-size:9px;font-weight:700;letter-spacing:.05em;color:#241802;background:#ffffffe6;padding:1px 5px;border-radius:4px}.stylecard{position:relative;background:var(--st-850)!important;border:1px solid rgba(255,255,255,.06)!important;border-radius:11px!important;overflow:hidden}.stylecard .cover,.stylecard img.cover{border-radius:0!important}.upload{border:1px dashed rgba(255,255,255,.14)!important;background:#ffffff05!important;border-radius:11px!important;color:var(--st-light)!important}.upload:hover{border-color:#e5a93c73!important}.stage-bar{background:var(--st-950)!important;border-top:1px solid rgba(255,255,255,.05)!important;font-size:11.5px;color:var(--st-muted)!important;padding:8px 16px!important}.glstatus{color:#4ade80!important}.panel.right .row label,.panel.right label{color:var(--st-light)!important}.btn.tb-export{background:var(--st-amber)!important;color:#241802!important;border:none!important;font-weight:700!important}.btn.tb-export:hover{background:var(--st-amber-2)!important}.btn.match,.match-cta{background:var(--st-amber)!important;color:#241802!important;font-weight:700!important}.btn.secondary,.btn.ghost{border-color:#ffffff1a!important;color:var(--st-light)!important;background:transparent!important}.fold-chev{transition:transform .16s ease;color:var(--st-muted)}.fold-chev.open{transform:rotate(90deg);color:var(--st-ice)}.fold,.detail-group-head,.preset-fold{border-top:1px solid rgba(255,255,255,.05)}.fold{font-size:12px;font-weight:600;color:var(--st-light);letter-spacing:.01em}.fold:hover{color:var(--st-ice)}.panel.right .section-title{margin-top:4px}.panel.right .suggest-row,.panel.right .ai-suggest{background:var(--st-900);border:1px solid rgba(255,255,255,.05);border-radius:10px}.panel.left{counter-reset:none!important}.panel.left .photo-row,.panel.left .target-card{background:var(--st-850)}.panel.left:before,.panel.right:before{content:none!important}.panel.left .section-title:before,.panel.right .section-title:before{content:none!important;display:none!important}.ref-card .ref-thumb{width:100%!important;height:auto!important;aspect-ratio:16 / 10!important;object-fit:contain!important;background:#0b0b0c;border-radius:0!important;border:0!important;flex:none!important;display:block}@media (max-width: 768px){.ref-card .ref-thumb{width:100%!important;height:auto!important}}.target-card{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:10px;background:var(--st-850);border:1px solid rgba(255,255,255,.06);border-radius:11px;padding:8px 10px}.target-thumb{width:56px;height:56px;border-radius:8px;object-fit:cover;border:1px solid rgba(255,255,255,.08)}.target-meta{display:grid;gap:2px;min-width:0}.target-name{font-size:12.5px;font-weight:600;color:var(--st-ice);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.target-sub{font-size:11px;color:var(--st-muted);font-variant-numeric:tabular-nums}.target-replace{font-size:11.5px;color:var(--st-amber);cursor:pointer;white-space:nowrap}.target-replace:hover{color:var(--st-amber-2);text-decoration:underline}.stylecard{display:flex;flex-direction:column}.stylecard .sname{padding:7px 8px 8px;font-size:11.5px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stylecard .cover,.stylecard img.cover{aspect-ratio:4 / 3;object-fit:cover;width:100%}.panel.right{padding-bottom:28px}.panel.right .suggest-row{padding:10px 12px}.panel.right .suggest-title{font-size:11.5px}.panel.right .ai-suggest{padding:9px 11px;font-size:11px;line-height:1.55}.panel.right .row{height:34px}.topbar .filelabel{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:7px;padding:3px 8px;color:var(--st-muted);font-size:11.5px}.ref-card .ref-thumb{aspect-ratio:auto!important;height:auto!important;max-height:340px!important;width:100%!important;object-fit:contain!important;background:#0b0b0c}.stylecard .sname{display:grid;gap:1px;padding:6px 8px 8px}.stylecard .sname i.sen{font-style:normal;display:inline-block;margin-left:4px;font-size:9.5px;letter-spacing:.06em;color:var(--st-muted)}.baseline-chip{font-size:11px;color:var(--st-muted);border:1px solid rgba(255,255,255,.06);background:#ffffff08;border-radius:7px;padding:3px 8px;white-space:nowrap}.grp-h{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--st-muted);margin:14px 0 6px}.grp-h:first-of-type{margin-top:2px}.v3-combo{position:relative}.v3-combo-row{display:flex;gap:6px;align-items:center}.v3-combo-row .v3-input{flex:1 1 auto;min-width:0}.v3-combo-btn{flex:0 0 auto;width:34px;height:36px;display:grid;place-items:center;background:#0b0b0c;border:1px solid rgba(255,255,255,.065);border-radius:7px;color:#9d9d9f;cursor:pointer}.v3-combo-btn:hover{background:#ffffff0f;color:#f4f4f4}.v3-combo-pop{margin-top:6px;background:#101013;border:1px solid rgba(255,255,255,.1);border-radius:9px;box-shadow:inset 0 1px #ffffff0b;padding:8px;display:grid;gap:6px}.v3-combo-head{display:flex;align-items:center;gap:8px}.v3-combo-search{flex:1 1 auto;min-width:0;height:30px;padding:0 9px;font-size:12px;background:#0b0b0c;border:1px solid rgba(255,255,255,.075);border-radius:6px;color:#f4f4f4;font-family:inherit}.v3-combo-search:focus{outline:none;border-color:#e5a93c80}.v3-combo-count{flex:0 0 auto;font-size:10.5px;color:#7d7d7f;white-space:nowrap}.v3-combo-all{text-align:left;font-size:11px;color:#c8a464;background:none;border:0;padding:0 2px;cursor:pointer;font-family:inherit}.v3-combo-all:hover{text-decoration:underline}.v3-combo-list{max-height:176px;overflow-y:auto;display:grid;gap:1px;overscroll-behavior:contain}.v3-combo-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;padding:6px 8px;border:0;border-radius:6px;background:transparent;color:#d4d4d6;cursor:pointer;font-family:inherit}.v3-combo-item:hover{background:#ffffff0f;color:#f4f4f4}.v3-combo-id{flex:1 1 auto;min-width:0;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v3-combo-meta{display:flex;align-items:center;gap:6px;flex:0 0 auto}.v3-combo-name{font-size:10.5px;color:#6f6f71;max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v3-combo-tag{font-size:9.5px;padding:1px 5px;border-radius:4px;border:1px solid rgba(255,255,255,.08);color:#6f6f71}.v3-combo-tag.on{border-color:#e5a93c6b;color:var(--st-amber)}.v3-combo-empty{font-size:12px;color:#7d7d7f;padding:10px 8px;line-height:1.6}.modal.ai-cfg-modal{max-height:88vh;overflow-y:auto}.v3-card-h{justify-content:flex-start}.v3-card-get{margin-left:auto;height:22px;padding:0 8px;font-size:10.5px;font-family:inherit;background:#e5a93c1a;color:var(--st-amber);border:1px solid rgba(229,169,60,.32);border-radius:5px;cursor:pointer;white-space:nowrap}.v3-card-get:hover:not(:disabled){background:#e5a93c2e}.v3-card-get:disabled{opacity:.5;cursor:default}.ref-acts{flex-wrap:wrap}.ref-acts .style-save{display:inline-flex;align-items:center;gap:4px;color:var(--st-amber);border:1px solid rgba(229,169,60,.32);background:#e5a93c14;border-radius:6px;padding:2px 8px}.ref-acts .style-save:hover{background:#e5a93c29;color:var(--st-amber-2);text-decoration:none}.ref-saved-msg{font-size:11px;color:#5cc98d;margin-top:6px;line-height:1.5}.styles-empty{font-size:11.5px;color:var(--st-muted);line-height:1.75;border:1px dashed rgba(255,255,255,.1);border-radius:10px;padding:12px;background:#ffffff05}.stylecard{position:relative}.stylecard .stylecard-hit{display:block;width:100%;padding:0;border:0;background:none;text-align:left;cursor:pointer;color:inherit;font-family:inherit;border-radius:9px;overflow:hidden}.stylecard .stylecard-hit .cover{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;background:#0b0b0c}.stylecard .cover-empty{background:linear-gradient(135deg,#1a1a1d,#101013)}.stylecard-acts{display:flex;gap:8px;padding:4px 8px 7px}.stylecard-acts button{background:none;border:0;padding:0;cursor:pointer;font-family:inherit;font-size:10.5px;color:#7d7d7f}.stylecard-acts button:hover{color:var(--st-amber)}.style-rename{display:flex;gap:4px;padding:5px 8px 7px;align-items:center}.style-rename input{flex:1 1 auto;min-width:0;height:24px;padding:0 6px;font-size:11px;font-family:inherit;background:#0b0b0c;border:1px solid rgba(255,255,255,.1);border-radius:5px;color:#f4f4f4}.style-rename .linkbtn{font-size:10.5px;padding:0 2px}
