.app-shell{flex:1 1 0;min-height:0;display:grid;grid-template-rows:44px 1fr;overflow:hidden;background:var(--app-bg)}.topbar{display:flex;align-items:center;gap:.5rem;padding:0 .75rem;border-bottom:1px solid var(--border);background:var(--panel-bg);flex-shrink:0}.brand{display:flex;align-items:center;gap:.4rem;flex-shrink:0;cursor:pointer;padding:.25rem .35rem;border-radius:6px;border:1px solid transparent;transition:background .1s,border-color .1s;-webkit-user-select:none;user-select:none;background:none;font:inherit;color:inherit}.brand:hover{background:var(--surface-hover);border-color:var(--border)}.brand-eye{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;opacity:.85}.brand-eye svg{width:18px;height:18px;fill:none;stroke:var(--text-primary);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.brand h1{margin:0;font-size:.86rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.brand--typographic{gap:.25rem}.brand-wordmark-img{height:10px;width:auto;display:block;filter:brightness(0) invert(1)}[data-theme=light] .brand-wordmark-img{filter:none}.brand-chevron{display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);margin-left:2px;opacity:.6}.topbar-gap{flex:1}.topbar-tagline{font-size:.7rem;color:var(--text-muted);letter-spacing:.01em;white-space:nowrap;margin-right:.25rem}.topbar-tagline-link{color:var(--text-muted);text-decoration:none;opacity:.8;transition:opacity .15s,color .15s}.topbar-tagline-link:hover{color:var(--accent);opacity:1;text-decoration:underline;text-underline-offset:2px}[data-theme=light] .topbar-tagline-link:hover{color:var(--success)}.theme-toggle-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;cursor:pointer;border:none;background:none;padding:0;color:var(--text-muted);border-radius:6px;transition:color .15s,background .15s}.theme-toggle-icon:hover{color:var(--text-primary);background:var(--surface-hover)}.welcome-screen{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--app-bg);overflow-y:auto}.welcome-screen.drag-active{background:var(--drag-over-bg);outline:2px dashed var(--drag-over-border);outline-offset:-4px}.welcome-drag-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;color:var(--drag-over-border);font-size:1.1rem;font-weight:500;pointer-events:none}.welcome-content{max-width:640px;width:100%;display:flex;flex-direction:column;gap:1.5rem}.welcome-upload-btn{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:2.5rem 2rem;border:2px dashed var(--border-strong);border-radius:16px;background:var(--surface-muted);cursor:pointer;color:var(--text-secondary);font:inherit;transition:border-color .15s,background .15s}.welcome-upload-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.welcome-upload-title{font-size:1.2rem;font-weight:700;color:var(--text-primary)}.welcome-upload-sub{font-size:.82rem;color:var(--text-muted)}.welcome-upload-formats{font-size:.7rem;color:var(--text-muted);opacity:.7}.welcome-upload-shortcut{font-size:.68rem;color:var(--text-muted);opacity:.5;margin-top:.2rem}.welcome-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.6rem}.welcome-feature-card{display:flex;align-items:flex-start;gap:.6rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:10px;background:var(--panel-bg);cursor:pointer;font:inherit;color:inherit;text-align:left;transition:border-color .12s,background .12s}.welcome-feature-card:hover{border-color:var(--accent);background:var(--surface-hover)}.welcome-feature-title{font-size:.78rem;font-weight:600;color:var(--text-primary);margin-bottom:.15rem}.welcome-feature-desc{font-size:.7rem;color:var(--text-muted);line-height:1.4}.workspace{display:flex;flex-direction:row;flex:1 1 0;min-height:0;overflow:hidden}.sidebar-resizer{width:4px;flex-shrink:0;order:2;cursor:col-resize;background:transparent;transition:background .15s;position:relative;z-index:5;align-self:stretch}.sidebar-resizer:hover,.sidebar-resizer:active{background:var(--accent)}.sidebar-resizer:after{content:"";position:absolute;top:0;bottom:0;left:-4px;right:-4px}.sidebar{flex-shrink:0;order:1;border-right:1px solid var(--border);background:var(--panel-bg);display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.sidebar-dropzone{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:1.5rem 1rem;border:2px dashed var(--border);border-radius:8px;margin:.5rem;text-align:center;cursor:pointer;transition:border-color .12s,background .12s;color:var(--text-muted);font-size:.8rem;line-height:1.5;background:transparent;font:inherit}.sidebar-dropzone:hover,.sidebar-dropzone.drag-active{border-color:var(--accent);background:var(--accent-soft);color:var(--text-primary)}.sidebar-dropzone-icon{opacity:.35;line-height:1;display:flex;align-items:center;justify-content:center}.sidebar-dropzone-link{color:var(--accent);text-decoration:underline;cursor:pointer}.sidebar-topbar{display:flex;align-items:center;gap:.25rem;padding:.35rem .4rem;border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-add-btn{flex:1;display:flex;align-items:center;gap:.3rem;background:transparent;border:1px solid var(--border);border-radius:5px;padding:.22rem .4rem;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);cursor:pointer;font:inherit;font-size:10px;transition:background .08s,border-color .08s,color .08s;white-space:nowrap}.sidebar-add-btn:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.sidebar-batch-btn{flex-shrink:0;display:flex;align-items:center;gap:.3rem;background:var(--surface-muted);border:1px solid var(--border);border-radius:5px;padding:.22rem .5rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);cursor:pointer;font:inherit;font-size:10px;transition:background .08s,border-color .08s,color .08s;white-space:nowrap}.sidebar-batch-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:transparent}.sidebar-batch-btn.active{background:var(--accent);border-color:var(--accent);color:#0a1a0d}.sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:.35rem .6rem .25rem;flex-shrink:0}.sidebar-head-label{font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.photo-list{flex:1;overflow-y:auto;padding:.35rem;display:flex;flex-direction:column;gap:.2rem}.photo-list.grid-mode{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));align-content:start;gap:.25rem}.photo-item{display:flex;flex-direction:row;align-items:center;gap:.4rem;text-align:left;width:100%;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text-primary);padding:.28rem .38rem;cursor:pointer;transition:background .08s,border-color .08s;position:relative}.photo-list:not(.grid-mode) .photo-item img{flex-shrink:0}.photo-list.grid-mode .photo-item{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;border-radius:5px;overflow:hidden}.photo-item:hover{background:var(--surface-hover);border-color:var(--border)}.photo-item.active{background:var(--accent-soft);border-color:var(--accent)}.photo-item.batch-selected{border-color:var(--accent);background:var(--accent-soft)}.photo-item.batch-selected.active{border-color:var(--accent)}.batch-checkbox{position:absolute;top:4px;left:4px;font-size:.85rem;line-height:1;color:var(--accent);z-index:2;cursor:pointer;padding:1px 2px;border-radius:3px;background:var(--panel-bg);opacity:.9}.batch-checkbox:hover{opacity:1}.photo-list.grid-mode .batch-checkbox{top:3px;left:3px}.photo-edited-badge{position:absolute;bottom:5px;right:5px;font-size:.68rem;color:var(--success);background:var(--panel-bg);border-radius:50%;width:14px;height:14px;display:flex;align-items:center;justify-content:center;line-height:1;z-index:3;box-shadow:0 0 0 1px var(--success);font-weight:700}.photo-list:not(.grid-mode) .photo-edited-badge{top:50%;bottom:auto;transform:translateY(-50%);right:8px}.photo-video-badge{position:absolute;bottom:5px;left:5px;font-size:.55rem;color:#fff;background:#000000b3;border-radius:3px;width:16px;height:14px;display:flex;align-items:center;justify-content:center;z-index:2;line-height:1}.photo-list:not(.grid-mode) .photo-video-badge{top:50%;bottom:auto;left:auto;right:22px;transform:translateY(-50%)}.video-player-wrap{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1;padding:1rem}.video-player{flex:1;min-height:0;border-radius:6px;background:#000}.video-stage{position:relative;flex:1;min-height:0;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center}.video-mask-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3}.video-mask-layer.drawing{pointer-events:all;cursor:crosshair}.video-mask-rect{position:absolute;border:2px solid #64ff88;background:#64ff881f;box-shadow:0 0 0 1px #00000059,0 0 18px #64ff8833;pointer-events:none}.video-mask-rect.draft{border-color:#f59e0b;background:#f59e0b29}.video-mask-rect--circle{border-radius:999px}.video-mask-rect--path{border-style:dashed;clip-path:polygon(8% 16%,92% 7%,82% 88%,18% 78%)}.video-frame-marker-layer{position:absolute;left:0;right:0;bottom:8px;height:12px;pointer-events:none;z-index:4}.video-frame-marker{position:absolute;bottom:0;width:3px;height:12px;border-radius:999px;background:#ff3b3b;box-shadow:0 0 0 1px #0000008c,0 0 12px #ff3b3b8c;transform:translate(-50%)}.video-controls-bar{display:flex;align-items:center;gap:.6rem;margin-top:.6rem;flex-wrap:wrap;justify-content:center}.video-mask-range-label{display:flex;align-items:center;gap:.25rem;font-size:.7rem;color:var(--text-muted)}.video-mask-range-label input{width:54px;padding:.2rem .3rem;border:1px solid var(--border);border-radius:4px;background:var(--panel-bg);color:var(--text-primary);font:inherit}.video-meta-badge{font-size:.72rem;color:var(--text-muted);background:var(--panel-bg);border:1px solid var(--border);border-radius:4px;padding:.15rem .5rem}.photo-item img{width:48px;height:36px;object-fit:cover;border-radius:3px;flex-shrink:0;display:block}.photo-list.grid-mode .photo-item img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;display:block;border-radius:0;flex-shrink:0}.photo-item-info{min-width:0;overflow:hidden;flex:1}.photo-item-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;opacity:0;transition:opacity .1s;margin-left:auto;padding-left:4px}.photo-item:hover .photo-item-actions,.photo-item.active .photo-item-actions{opacity:1}.photo-list.grid-mode .photo-item-info{padding:2px 4px 3px;background:var(--panel-bg)}.photo-list.grid-mode .photo-item-name{font-size:.55rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-list.grid-mode .photo-item-meta{display:none}.photo-list.grid-mode .photo-item-actions{position:absolute;top:3px;right:3px;margin-left:0;background:transparent;border-radius:4px;padding:1px;gap:1px}.photo-list.grid-mode .photo-item-action-btn{width:18px;height:18px;color:#fff;background:transparent}.photo-list.grid-mode .photo-item-action-btn:hover{background:#000000a6;color:#fff}.photo-list.grid-mode .photo-item-action-btn--danger:hover{background:#c82828cc;color:#fff}.photo-item-action-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;padding:0;flex-shrink:0;transition:background .08s,color .08s}.photo-item-action-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.photo-item-action-btn--danger:hover{background:var(--danger-soft);color:var(--danger)}.photo-item-name{display:block;font-size:.73rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary);line-height:1.3}.photo-item-meta{font-size:.63rem;color:var(--text-muted);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-item-path{font-size:.6rem;color:var(--text-muted);opacity:.7;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-item-thumb{width:48px;height:36px;object-fit:cover;border-radius:3px;flex-shrink:0;border:1px solid var(--border)}.photo-item-index{width:48px;height:36px;border:1px solid var(--border);border-radius:3px;display:grid;place-items:center;color:var(--text-muted);font-size:.66rem;flex-shrink:0}.sidebar-process-bar{padding:.45rem .4rem;border-top:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;gap:.35rem}.sidebar-process-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.4rem;background:#3b5bdb;border:none;border-radius:6px;padding:.45rem .75rem;font-size:13px;font-weight:600;color:#fff;cursor:pointer;font:inherit;transition:background .1s}.sidebar-process-btn:hover:not(:disabled){background:#2f4ac7}.sidebar-process-btn:disabled{opacity:.45;cursor:not-allowed}.sidebar-batch-select-row{display:flex;align-items:center;gap:.25rem;justify-content:flex-end}.load-more-btn{width:100%;padding:.4rem;font-size:.72rem;background:transparent;border:1px dashed var(--border);border-radius:5px;color:var(--text-muted);cursor:pointer;flex-shrink:0;font:inherit}.load-more-btn:hover{background:var(--surface-hover)}.photo-list.grid-mode .load-more-btn{grid-column:1 / -1}.tool-strip{width:56px;flex-shrink:0;order:4;min-height:0;background:var(--panel-bg);border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;position:relative;z-index:10}.tool-strip::-webkit-scrollbar{display:none}.ts-sep{width:32px;height:1px;background:var(--border);flex-shrink:0;margin:4px 0}.ts-btn{width:40px;height:36px;border-radius:7px;border:1px solid transparent;background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-size:1.05rem;cursor:pointer;flex-shrink:0;transition:background .08s,border-color .08s,color .08s;line-height:1;padding:0;font:inherit;position:relative}.ts-btn:hover:not(:disabled):not(.active){background:var(--surface-hover);border-color:var(--border);color:var(--text-primary)}.ts-btn.active{background:var(--accent);border-color:var(--accent);color:#0a1a0d;transition:background 0s,border-color 0s,color 0s}.ts-btn.active:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:#0a1a0d}.ts-btn:disabled{opacity:.3;cursor:not-allowed}.ts-face-count-inline{display:inline-flex;align-items:center;justify-content:center;font-size:.52rem;font-weight:800;line-height:1;min-width:14px;height:14px;border-radius:7px;background:#0a1a0d;color:#70ff88;padding:0 3px;position:absolute;bottom:3px;right:3px}.ts-btn.active .ts-face-count-inline{background:#0a1a0db3;color:#fff}.ts-btn-autodetect{position:relative}.ts-btn-setup{background:#ffa94d26!important;color:var(--warn)!important;border-color:var(--warn)!important}.ts-btn-setup.active{background:var(--warn)!important;color:#1a1a1a!important}.ts-btn-setup:hover{background:#ffa94d40!important;color:var(--warn)!important}.ts-btn-setup.active:hover{background:#ffb84d!important;color:#1a1a1a!important}.ts-btn-fail{background:#dc3c3c26!important;color:#dc3c3c!important;border-color:#dc3c3c!important}.ts-btn-fail.active{background:#dc3c3c!important;color:#fff!important}.ts-btn-fail:hover{background:#dc3c3c40!important;color:#dc3c3c!important}.ts-btn-fail.active:hover{background:#e55555!important;color:#fff!important}.deps-modal{max-width:440px;max-height:80vh;overflow-y:auto}.deps-install-btn{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;padding:.55rem .8rem;border-radius:8px;border:none;background:var(--warn);color:#1a1a1a;font-size:.78rem;font-weight:700;cursor:pointer;transition:background .15s,transform .1s}.deps-install-btn:hover:not(:disabled){background:#ffb84d;transform:translateY(-1px)}.deps-install-btn:active:not(:disabled){transform:translateY(0)}.deps-install-btn:disabled{opacity:.6;cursor:wait}.ts-btn-label{font-size:.5rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1;display:block;margin-top:1px}.ts-slider-group{display:flex;flex-direction:column;align-items:center;gap:4px;padding:4px 0;width:100%}.ts-slider-label{font-size:.48rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);text-align:center}.ts-slider-val{font-size:.56rem;font-family:ui-monospace,monospace;color:var(--text-secondary)}.ts-slider{writing-mode:vertical-lr;direction:rtl;width:24px;height:60px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.editor-area{flex:1 1 0;order:5;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;position:relative;background:var(--app-bg)}.action-toolbar{flex-shrink:0;display:flex;align-items:center;gap:.2rem;padding:.3rem .5rem;border-bottom:1px solid var(--border);background:var(--panel-bg);flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.action-toolbar::-webkit-scrollbar{display:none}.tb-sep{width:1px;height:18px;background:var(--border);flex-shrink:0;margin:0 .1rem}.tb-btn{display:flex;align-items:center;gap:.28rem;border:1px solid transparent;background:transparent;color:var(--text-secondary);border-radius:5px;padding:.25rem .5rem;font-weight:500;white-space:nowrap;cursor:pointer;flex-shrink:0;font:inherit;font-size:12px;transition:background .08s,border-color .08s,color .08s;line-height:1.3}.tb-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border);color:var(--text-primary)}.tb-btn.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.tb-btn:disabled{opacity:.35;cursor:not-allowed}.tb-btn-danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.tb-btn-primary{background:#3b5bdb;border-color:#3b5bdb;color:#fff;font-weight:600}.tb-btn-primary:hover:not(:disabled){background:#2f4ac7;border-color:#2f4ac7;color:#fff}.tb-icon{font-size:.9rem;line-height:1}.tb-btn-save{background:#3b5bdb;border-color:#3b5bdb;color:#fff}.tb-btn-save:hover:not(:disabled){background:#2f4ac7;border-color:#2f4ac7;color:#fff}.tb-select{border:1px solid var(--border);background:var(--surface-muted);color:var(--text-secondary);border-radius:5px;padding:.25rem .38rem;font-size:.75rem;font:inherit;cursor:pointer;flex-shrink:0}.tb-select:focus{outline:2px solid var(--accent);outline-offset:1px}.tb-range-wrap{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.tb-range-label{font-size:.68rem;color:var(--text-muted);white-space:nowrap}.tb-range{width:62px;accent-color:var(--accent);cursor:pointer}.tb-status{margin-left:auto;font-size:.7rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px;flex-shrink:1;padding-left:.3rem;display:flex;align-items:center;gap:.35rem}.detect-status{display:inline-flex;align-items:center;gap:.2rem;font-size:.68rem;padding:.15rem .45rem;border-radius:4px;white-space:nowrap}.detect-status.loading{color:var(--text-muted);background:transparent}.detect-status.ok{color:#1a7a40;background:#1a7a401f}.detect-status.error{color:#b84040;background:#b840401f}[data-theme=dark] .detect-status.ok{color:#4fd68a;background:#4fd68a1a}[data-theme=dark] .detect-status.error{color:#f07070;background:#f070701a}.tb-btn-inline{display:inline-flex;align-items:center;border:none;background:none;color:inherit;font-size:.68rem;padding:0 .25rem;cursor:pointer;opacity:.7;text-decoration:underline}.tb-btn-inline:hover{opacity:1}.tb-filename{font-size:.74rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;flex-shrink:1}.tb-res-btn{color:var(--text-muted);background:none;border:1px solid transparent;border-radius:4px;padding:.18rem .35rem;cursor:pointer;white-space:nowrap;font:inherit;font-family:ui-monospace,monospace;font-size:.72rem;transition:border-color .08s,background .08s;flex-shrink:0}.tb-res-btn:hover{border-color:var(--border);background:var(--surface-hover)}.tb-res-edit{display:flex;align-items:center;gap:.2rem;flex-shrink:0}.tb-res-input{width:72px;border:1px solid var(--border);border-radius:4px;padding:.18rem .3rem;font-size:.72rem;font-family:ui-monospace,monospace;background:var(--surface-muted);color:var(--text-primary);text-align:center;transition:border-color .1s}.tb-res-input:focus{outline:none;border-color:var(--border)}.tb-res-input--dirty{border-color:var(--accent);outline:none}.tb-face-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;padding:.18rem .4rem;border-radius:4px;background:var(--surface-muted);border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;flex-shrink:0;cursor:default}.tb-eye-btn{background:none;border:none;cursor:pointer;font-size:.85rem;padding:0 .1rem;color:var(--text-muted);line-height:1;opacity:.75;transition:opacity .08s}.tb-eye-btn:hover{opacity:1}.tb-eye-btn.hidden{opacity:.35}.tb-quality-wrap{display:flex;align-items:center;gap:4px}.tb-quality-slider{width:80px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.batch-task-body .tb-quality-wrap{display:grid;grid-template-columns:1fr 52px auto;gap:6px;align-items:center}.batch-task-body .tb-quality-slider{width:100%}.tb-quality-num{width:38px;border:1px solid var(--border);border-radius:4px;padding:.22rem .2rem;font-size:.72rem;background:var(--surface-muted);color:var(--text-primary);text-align:center;font:inherit}.tb-filesize{font-size:.68rem;color:var(--text-muted);white-space:nowrap;min-width:44px;text-align:right}.vectorize-panel{position:absolute;bottom:8px;right:8px;background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;padding:.55rem .65rem;width:210px;z-index:50;box-shadow:0 8px 24px #00000059;display:flex;flex-direction:column;gap:.25rem}.vectorize-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.15rem}.vectorize-label{font-size:.6rem;color:var(--text-muted);margin-top:.15rem}.vectorize-spinner{font-size:.7rem;animation:spin 1s linear infinite}.vectorize-progress{height:3px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-top:.2rem}.vectorize-progress-bar{height:100%;background:var(--accent);border-radius:2px;animation:vectorize-indeterminate 1.2s ease-in-out infinite}@keyframes vectorize-indeterminate{0%{width:0%;margin-left:0%}50%{width:60%;margin-left:20%}to{width:0%;margin-left:100%}}.vectorize-panel select,.vectorize-panel input[type=range]{width:100%;font-size:.65rem}.svg-preview-overlay{position:absolute;z-index:5;display:flex;align-items:center;justify-content:center;background:var(--canvas-bg);overflow:hidden;pointer-events:none;box-shadow:0 0 0 1px #ffffff14}.svg-preview-overlay img{width:100%;height:100%;object-fit:contain;display:block}.viewer{flex:1;min-height:0;background:var(--canvas-bg);overflow:hidden;position:relative}.viewer canvas{position:absolute;top:0;left:0;width:100%;height:100%;touch-action:none;cursor:crosshair;display:block}.brush-preview-overlay{pointer-events:none!important;z-index:2;cursor:none}.zone-delete-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:8}.zone-delete-btn{position:absolute;width:18px;height:18px;border-radius:3px;background:#00000085;border:none;color:#fff;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:all;transform:none;transition:background .12s,color .12s;padding:0}.zone-delete-btn:hover{background:#3cc850e0;color:#fff}.viewer.viewer-readonly canvas,.viewer canvas.readonly-canvas{cursor:default}.viewer.viewer-crop-picking canvas{cursor:crosshair}.viewer-corner{position:absolute;bottom:14px;right:14px;display:flex;gap:.35rem;z-index:20;align-items:center}.corner-btn{padding:.35rem .75rem;font:inherit;font-size:12px;font-weight:600;border-radius:7px;border:1px solid var(--border);background:var(--panel-bg);color:var(--text-primary);cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:.9;transition:opacity .08s,border-color .08s,background .08s;box-shadow:0 2px 10px #00000059;white-space:nowrap}.corner-btn:hover:not(:disabled){opacity:1;border-color:var(--accent)}.corner-btn:disabled{opacity:.4;cursor:default}.corner-btn-primary{background:var(--accent);border-color:var(--accent);color:#0a1a0d}.corner-btn-primary:hover:not(:disabled){background:var(--accent-hover, var(--accent));border-color:var(--accent-hover, var(--accent));color:#0a1a0d;opacity:1}.corner-btn-secondary{background:var(--panel-bg);padding:.3rem .5rem;font-size:12px}.undo-corner-group{position:absolute;top:16px;left:12px;z-index:20;display:flex;gap:6px}.undo-corner-btn{z-index:20;padding:.32rem .65rem;font:inherit;font-size:.72rem;border-radius:6px;border:1px solid var(--border);background:var(--panel-bg);color:var(--text-primary);cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:.82;transition:opacity .08s,border-color .08s;box-shadow:0 2px 8px #0000004d}.undo-corner-btn:hover{opacity:1;border-color:var(--accent)}.snapshot-corner-btn{position:absolute;bottom:12px;left:12px;z-index:20;padding:.3rem .6rem;font:inherit;font-size:.68rem;border-radius:6px;border:1px solid var(--border);background:var(--panel-bg);color:var(--text-secondary);cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:.75;display:flex;align-items:center;gap:.3rem;transition:opacity .12s,border-color .12s}.snapshot-corner-btn:hover{opacity:1;border-color:var(--accent);color:var(--text-primary)}.snapshot-corner-btn:disabled{opacity:.4;cursor:default}.preview-progress-bar{position:absolute;bottom:10px;left:10px;display:flex;flex-direction:column;gap:3px;pointer-events:none;z-index:20}.preview-progress-track{width:100px;height:3px;background:#ffffff1f;border-radius:999px;overflow:hidden}.preview-progress-fill{height:100%;background:var(--accent);border-radius:999px;animation:preview-progress-pulse .9s ease-in-out infinite alternate;width:60%}@keyframes preview-progress-pulse{0%{width:10%;opacity:.7}to{width:90%;opacity:1}}.preview-progress-label{font-size:.58rem;color:#ffffff8c;letter-spacing:.03em}.viewer.drag-over:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:2px dashed var(--drag-over-border);border-radius:4px;background:var(--drag-over-bg);pointer-events:none;z-index:5}.drag-over-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;pointer-events:none;z-index:6}.drag-over-icon{font-size:3rem;line-height:1;opacity:.7}.drag-over-text{font-size:1.1rem;font-weight:600;color:var(--accent);letter-spacing:-.01em}.drop-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;pointer-events:none;-webkit-user-select:none;user-select:none}.drop-hint-icon{opacity:.12;line-height:1;display:flex;align-items:center;justify-content:center}.drop-hint-text{font-size:.88rem;color:var(--text-muted);opacity:.6;text-align:center;line-height:1.6}.drop-hint-shortcut{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;color:var(--text-muted);opacity:.5}.kbd{display:inline-block;padding:.1em .35em;border:1px solid var(--border-strong);border-radius:3px;font-size:.7rem;font-family:ui-monospace,monospace;color:var(--text-muted);background:var(--surface-muted);line-height:1.4}.detecting-overlay{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:25;background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;padding:.4rem .9rem;font-size:.76rem;color:var(--text-secondary);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 2px 10px #00000040;white-space:nowrap;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;justify-content:center}.local-proof-bar{width:100%;display:flex;flex-direction:column;align-items:center;gap:.2rem;margin-top:.25rem}.local-proof-progress{width:100%;height:3px;border-radius:2px;background:#ffffff14;overflow:hidden;position:relative}.local-proof-progress:after{content:"";position:absolute;top:0;left:0;bottom:0;width:40%;background:var(--accent);border-radius:2px;animation:vectorize-indeterminate 1s ease-in-out infinite}.local-proof-label{font-size:.55rem;color:var(--accent);display:flex;align-items:center;gap:.2rem;opacity:.9}.local-proof-badge{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:20;background:#22c55e1f;border:1px solid rgba(34,197,94,.3);border-radius:6px;padding:.2rem .6rem;font-size:.58rem;color:#22c55e;display:flex;align-items:center;gap:.25rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:proof-fade 5s ease-out forwards}@keyframes proof-fade{0%,70%{opacity:1}to{opacity:0;pointer-events:none}}.norm-panel{position:absolute;top:0;right:0;bottom:0;width:300px;background:var(--panel-bg);border-left:1px solid var(--border);display:flex;flex-direction:column;z-index:10;transform:translate(100%);transition:transform .18s cubic-bezier(.4,0,.2,1)}.norm-panel.open{transform:translate(0)}.norm-panel-head{display:flex;align-items:center;justify-content:space-between;padding:.55rem .75rem;border-bottom:1px solid var(--border);font-size:13px;font-weight:600;flex-shrink:0;letter-spacing:.01em}.norm-panel-body{flex:1 1 0;min-height:0;overflow-y:auto;padding:.65rem;display:flex;flex-direction:column;gap:.7rem}button,select,input[type=range],input[type=number]{font:inherit}.field-label{display:block;font-size:11px;font-weight:600;color:var(--text-muted);margin-bottom:.2rem;letter-spacing:.04em;text-transform:uppercase}.field-select{width:100%;border:1px solid var(--border);background:var(--surface-muted);color:var(--text-primary);border-radius:5px;padding:.28rem .4rem;font-size:12px;font:inherit;cursor:pointer}.field-input{width:100%;border:1px solid var(--border);background:var(--surface-muted);color:var(--text-primary);border-radius:5px;padding:.28rem .4rem;font-size:12px;font:inherit}input[type=number].field-input{padding-right:.6rem}.field-input:focus,.field-select:focus{outline:2px solid var(--accent);outline-offset:1px}.field-range{width:100%;accent-color:var(--accent)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.checkbox-row{display:flex;align-items:center;gap:.4rem;font-size:.76rem;color:var(--text-secondary);cursor:pointer}.section-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding-bottom:.22rem;border-bottom:1px solid var(--border);margin-bottom:.1rem}.progress-track{height:4px;border-radius:999px;background:var(--border);overflow:hidden;margin:.25rem 0}.progress-fill{height:100%;background:var(--accent);transition:width .15s ease-out;border-radius:999px}.meta-row{display:flex;justify-content:space-between;gap:.4rem;font-size:.72rem;color:var(--text-muted);flex-wrap:wrap}.meta-file{font-size:.68rem;color:var(--text-muted);font-family:ui-monospace,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-card{border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);padding:.65rem .7rem;display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}.summary-card-header{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;font-weight:600;color:var(--text-primary)}.summary-stats{display:flex;gap:.45rem}.summary-stat{flex:1;background:var(--panel-bg);border:1px solid var(--border);border-radius:6px;padding:.35rem .4rem;display:flex;flex-direction:column;align-items:center;gap:.08rem}.summary-stat-warn{border-color:var(--danger);background:var(--danger-soft)}.summary-stat-value{font-size:.95rem;font-weight:700;color:var(--text-primary);line-height:1.1}.summary-stat-warn .summary-stat-value{color:var(--danger)}.summary-stat-label{font-size:.63rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.summary-size-bar{display:flex;flex-direction:column;gap:.28rem}.summary-size-labels{display:flex;justify-content:space-between;font-size:.74rem;color:var(--text-secondary)}.summary-bar-track{height:6px;border-radius:999px;background:var(--border);overflow:hidden}.summary-bar-after{height:100%;border-radius:999px;background:var(--accent);transition:width .5s ease-out}.summary-saving{font-size:.78rem;font-weight:600;color:var(--success);text-align:center}.summary-saving-grow{color:var(--text-muted);font-weight:500}.summary-per-file{font-size:.68rem;color:var(--text-muted);text-align:center}.norm-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem}.norm-preview-thumb{border:1px solid var(--border);border-radius:4px;overflow:hidden;background:var(--surface-muted);cursor:pointer;padding:0;transition:border-color .08s}.norm-preview-thumb:hover{border-color:var(--accent)}.norm-preview-thumb img{width:100%;height:46px;object-fit:cover;display:block}.crop-box{border:1px dashed var(--border-strong);border-radius:7px;padding:.5rem;background:var(--surface-muted);display:flex;flex-direction:column;gap:.38rem}.tiny-note{font-size:.68rem;color:var(--text-muted);margin:0;line-height:1.4}.btn{border:1px solid var(--border);background:var(--button-bg);color:var(--text-primary);border-radius:5px;padding:.3rem .55rem;font-size:12px;cursor:pointer;white-space:nowrap;font:inherit;transition:border-color .08s,background .08s}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.38;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#0a1a0d;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:#0a1a0d}.btn-sm{font-size:12px;padding:.25rem .45rem}.btn-row{display:flex;gap:.35rem;flex-wrap:wrap}.icon-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:3px 6px;border-radius:4px;font-size:.78rem;line-height:1;display:flex;align-items:center;font:inherit}.icon-btn:hover{color:var(--text-primary);background:var(--surface-hover)}.icon-btn.active{color:var(--accent);background:var(--accent-soft)}.about-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.about-modal{background:var(--panel-bg);border:1px solid var(--border);border-radius:12px;max-width:520px;width:100%;max-height:80vh;overflow-y:auto;padding:1.5rem;box-shadow:0 12px 48px #0006;position:relative}.about-modal-close{position:absolute;top:.8rem;right:.8rem;background:transparent;border:none;border-radius:6px;padding:.25rem;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font:inherit}.about-modal-close:hover{background:#ffffff1a;color:#fff}.model-load-toast{position:fixed;left:50%;bottom:18px;transform:translate(-50%);z-index:340;display:flex;align-items:center;gap:.6rem;padding:.55rem .85rem;background:#0c0e12eb;border:1px solid var(--border, rgba(255, 255, 255, .14));border-radius:10px;box-shadow:0 8px 28px #00000073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.model-load-toast-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.25);border-top-color:var(--accent, #00ff78);border-radius:50%;animation:model-load-spin .8s linear infinite;flex-shrink:0}@keyframes model-load-spin{to{transform:rotate(360deg)}}.model-load-toast-body{display:flex;flex-direction:column;gap:2px;min-width:150px}.model-load-toast-label{font-size:.74rem;letter-spacing:.03em}.model-load-toast-bytes{font-size:.68rem;color:var(--text-muted, rgba(255, 255, 255, .6));font-variant-numeric:tabular-nums}.model-load-toast-bar{height:3px;border-radius:2px;background:#ffffff26;overflow:hidden}.model-load-toast-fill{display:block;height:100%;background:var(--accent, #00ff78);transition:width .15s ease}.detect-settings-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:320;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.detect-settings-sheet{width:min(420px,100%);max-height:min(86vh,640px);overflow-y:auto;background:var(--surface, #14161a);border:1px solid var(--border, rgba(255, 255, 255, .12));border-radius:14px;box-shadow:0 18px 50px #00000080}.detect-settings-header{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;padding:.75rem 1rem}.detect-settings-header h2{margin:0;font-size:.95rem;text-align:center;letter-spacing:.04em}.detect-settings-close{justify-self:end;background:none;border:none;color:#fff;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer}.detect-settings-close:hover{background:#ffffff1a}.detect-settings-body{display:flex;flex-direction:column;gap:1rem;padding:.5rem 1.25rem 1.25rem}.detect-settings-section{display:flex;flex-direction:column;gap:.5rem}.detect-settings-label{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted, rgba(255, 255, 255, .6))}.detect-settings-targets{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem}.detect-settings-target{position:relative;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.55rem .25rem;background:transparent;border:1px solid var(--border, rgba(255, 255, 255, .14));border-radius:10px;color:var(--text, #fff);font-size:.7rem;cursor:pointer}.detect-settings-target.selected{border-color:var(--accent, #00ff78);background:var(--accent-soft, rgba(0, 255, 120, .12));color:var(--accent, #00ff78)}.detect-settings-target.disabled{opacity:.4;cursor:not-allowed}.detect-settings-soon{font-size:.5rem;letter-spacing:.05em;padding:1px 4px;border-radius:4px;background:#ffffff24}.detect-settings-slider-head{display:flex;justify-content:space-between;align-items:baseline}.detect-settings-value{font-size:.8rem;font-variant-numeric:tabular-nums}.detect-settings-hint{margin:0;font-size:.7rem;line-height:1.35;color:var(--text-muted, rgba(255, 255, 255, .55))}.detect-settings-toggle{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.5rem;font-size:.82rem;cursor:pointer}.detect-settings-toggle-hint{grid-column:2;font-size:.68rem;color:var(--text-muted, rgba(255, 255, 255, .5))}.detect-settings-detect{margin-top:.25rem;width:100%;justify-content:center}.feedback-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#000000a8;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.feedback-modal{position:relative;width:100%;max-width:440px;background:var(--panel-bg);border:1px solid var(--border);border-radius:14px;padding:1.5rem 1.4rem 1.2rem;box-shadow:0 20px 60px #00000080}.feedback-modal-title{margin:0 0 .4rem;font-size:1.05rem;font-weight:600;color:var(--text-primary)}.feedback-modal-desc{margin:0 0 .75rem;font-size:.78rem;color:var(--text-muted);line-height:1.5}.feedback-modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.7rem}.feedback-modal-send{text-decoration:none;display:inline-flex;align-items:center;gap:.3rem}.about-link{color:var(--accent);font-weight:600;text-decoration:none}.about-link:hover{text-decoration:underline;opacity:.85}.feedback-textarea{width:100%;min-height:100px;padding:.5rem;font:inherit;font-size:.8rem;border:1px solid var(--border);border-radius:6px;background:var(--surface-muted);color:var(--text-primary);resize:vertical}.feedback-textarea:focus{outline:none;border-color:var(--accent)}.feedback-textarea::placeholder{color:var(--text-muted)}.tb-github-link{display:inline-flex;align-items:center;gap:2px;font-size:.6rem;color:#ffffffa6;text-decoration:none;white-space:nowrap;line-height:1;transition:color .1s}.tb-github-link:hover{color:#fffffff2}.color-side-panel{position:absolute;top:0;right:0;bottom:0;width:280px;background:var(--panel-bg);border-left:1px solid var(--border);display:flex;flex-direction:column;z-index:10;transform:translate(100%);transition:transform .18s cubic-bezier(.4,0,.2,1)}.color-side-panel.open{transform:translate(0)}.color-panel-hint{font-size:.7rem;color:var(--text-muted);line-height:1.45;margin:0}.color-presets{display:flex;gap:.25rem;flex-wrap:wrap;margin-top:.35rem}.color-preset-btn{border:1px solid var(--border);background:var(--surface-muted);color:var(--text-secondary);border-radius:10px;padding:1px 5px;font-size:9px;cursor:pointer;white-space:nowrap;font:inherit;transition:border-color .08s,background .08s,color .08s}.color-preset-btn:hover{border-color:var(--accent);color:var(--text-primary)}.color-preset-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.batch-task-body .color-preset-btn{padding:2px 6px;font-size:9px;border-radius:8px}.batch-task-body .color-presets{gap:.25rem;margin-top:.3rem}.field-range,.color-slider-input,.tb-quality-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:20px;background:transparent}.field-range::-webkit-slider-runnable-track,.color-slider-input::-webkit-slider-runnable-track,.tb-quality-slider::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:var(--surface-hover)}.field-range::-moz-range-track,.color-slider-input::-moz-range-track,.tb-quality-slider::-moz-range-track{height:4px;border-radius:2px;background:var(--surface-hover)}.field-range::-webkit-slider-thumb,.color-slider-input::-webkit-slider-thumb,.tb-quality-slider::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:14px;margin-top:-5px;border-radius:8px;background:var(--accent);cursor:pointer}.field-range::-moz-range-thumb,.color-slider-input::-moz-range-thumb,.tb-quality-slider::-moz-range-thumb{width:22px;height:14px;border:none;border-radius:8px;background:var(--accent);cursor:pointer}.color-sliders{display:flex;flex-direction:column;gap:.5rem;margin-top:.35rem}.color-slider-row{display:grid;grid-template-columns:76px 1fr 40px;align-items:center;gap:.4rem}.color-slider-label{font-size:.64rem;color:var(--text-secondary);white-space:nowrap}.color-slider-input{width:100%;accent-color:var(--accent);cursor:pointer}.color-slider-val{font-size:.64rem;color:var(--text-muted);font-family:ui-monospace,monospace;font-variant-numeric:tabular-nums;text-align:right}.color-actions{display:flex;gap:.4rem;flex-wrap:wrap}.material-symbols-outlined{font-family:Material Symbols Outlined,sans-serif;font-weight:400;font-style:normal;font-size:20px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;vertical-align:middle;-webkit-user-select:none;user-select:none}.ms-filled{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.brand-dot-lime{position:absolute;width:6px;height:6px;border-radius:50%;background:#a8ff3e;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 4px #a8ff3e99}[data-theme=light] .brand-dot-lime{background:#1a1a1a;box-shadow:none}.brand-eye{position:relative}.processing-toggle{display:inline-flex;border:1px solid var(--border);border-radius:5px;overflow:hidden;flex-shrink:0}.processing-toggle-opt{display:inline-flex;align-items:center;gap:.2rem;border:none;background:transparent;color:var(--text-muted);padding:.18rem .45rem;font:inherit;font-size:.62rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .12s,color .12s}.processing-toggle-opt:first-child{border-right:1px solid var(--border)}.processing-toggle-opt:hover:not(.active){color:var(--text-primary);background:#ffffff0a}.processing-toggle-opt.active{background:var(--accent);color:#111;font-weight:600}.topbar-processing-group{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.topbar-privacy-badge{font-size:.55rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0;transition:opacity .2s,color .2s}.topbar-privacy-badge.visible{opacity:.85;color:var(--accent)}.privacy-shield-wrap{position:relative;flex-shrink:0}.privacy-shield-btn{display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:.15rem;border-radius:3px;transition:color .12s}.privacy-shield-btn:hover{color:var(--text-primary)}.privacy-shield-btn.secure{color:var(--accent)}.privacy-shield-tooltip{display:none;position:absolute;top:calc(100% + 6px);right:0;background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;padding:.6rem .7rem;min-width:220px;z-index:200;box-shadow:0 8px 24px #0000004d}.privacy-shield-wrap:hover .privacy-shield-tooltip{display:block}.privacy-shield-title{font-size:.72rem;font-weight:600;margin-bottom:.35rem;color:var(--text-primary)}.privacy-shield-list{list-style:none;padding:0;margin:0}.privacy-shield-list li{font-size:.64rem;padding:.12rem 0;color:var(--text-secondary)}.privacy-shield-list li:before{content:"●";margin-right:.35rem;font-size:.5rem}.privacy-shield-list li.ok:before{color:var(--accent)}.privacy-shield-list li.warn:before{color:#f59f00}.topbar-demo-btn{display:inline-flex;align-items:center;border:1px solid var(--border);background:transparent;color:var(--text-muted);border-radius:5px;padding:.2rem .45rem;font-weight:500;cursor:pointer;white-space:nowrap;font:inherit;font-size:.65rem;transition:border-color .08s,color .08s,background .08s;flex-shrink:0}.topbar-demo-btn:hover:not(:disabled){border-color:var(--accent);color:var(--text-primary)}.topbar-demo-btn:disabled{opacity:.4;cursor:not-allowed}.topbar-github-link{font-size:.7rem;color:var(--text-muted);text-decoration:none;opacity:.75;transition:opacity .08s,color .08s;flex-shrink:0}.topbar-github-link:hover{opacity:1;color:var(--accent)}.sidebar-add-btn{color:var(--accent)}[data-theme=light] .sidebar-add-btn,[data-theme=light] .privacy-shield-btn,[data-theme=light] .privacy-shield-btn.secure{color:#1a1a1a}.folder-tree{padding:.25rem .35rem;border-bottom:1px solid var(--border);flex-shrink:0;max-height:180px;overflow-y:auto;overflow-x:hidden}.folder-tree-toggle{display:flex;align-items:center;gap:.25rem;width:100%;background:none;border:none;padding:.2rem .35rem;font:inherit;font-size:.68rem;font-weight:600;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border-radius:4px;transition:background .08s}.folder-tree-toggle:hover{background:var(--surface-hover);color:var(--text-primary)}.folder-node{display:flex;align-items:center;gap:.25rem;padding:.18rem .3rem;border-radius:4px;cursor:pointer;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;background:none;border:none;font:inherit;font-size:.7rem;text-align:left;transition:background .07s,color .07s}.folder-node:hover{background:var(--surface-hover);color:var(--text-primary)}.folder-node-up{opacity:.7;font-style:italic}.folder-node.active{background:var(--accent-soft);color:var(--accent)}.folder-node .fn-icon{font-size:14px;flex-shrink:0}.folder-node .fn-name{overflow:hidden;text-overflow:ellipsis;flex:1}.folder-node .fn-count{font-size:.6rem;color:var(--text-muted);background:var(--surface-muted);border-radius:3px;padding:0 4px;flex-shrink:0}.batch-panel{flex-shrink:0;order:3;min-width:0;min-height:0;overflow:hidden;background:var(--panel-bg);border-right:1px solid var(--border);display:flex;flex-direction:column;transition:width .18s cubic-bezier(.4,0,.2,1)}.batch-panel-inner{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}.ts-flyout{width:230px;background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 32px #00000073;padding:.6rem;display:flex;flex-direction:column;gap:.4rem;max-height:calc(100vh - 80px);overflow-y:auto}.ts-flyout-portal{position:fixed;z-index:9999}.ts-flyout-title{font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);padding-bottom:.3rem;border-bottom:1px solid var(--border)}.ts-effect-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem}.ts-effect-tile{display:flex;flex-direction:column;align-items:center;gap:2px;padding:.35rem .2rem;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer;font:inherit;transition:background .08s,border-color .08s;color:var(--text-secondary)}.ts-effect-tile:hover{background:var(--surface-hover);border-color:var(--border);color:var(--text-primary)}.ts-effect-tile.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);outline:2px solid var(--accent);outline-offset:1px}.ts-effect-tile-icon{font-size:18px;line-height:1}.ts-effect-tile-label{font-size:.55rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.ts-tooltip-wrap{position:relative;display:flex;justify-content:center;width:100%}.ts-tooltip-wrap .ts-tooltip{position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);background:var(--panel-bg);border:1px solid var(--border);border-radius:5px;padding:.3rem .55rem;font-size:.7rem;white-space:nowrap;pointer-events:none;z-index:80;box-shadow:0 2px 8px #0003;opacity:0;transition:opacity .12s;color:var(--text-secondary)}.ts-tooltip-wrap:hover .ts-tooltip{opacity:1}.ts-sliders-fill{flex:1;min-height:80px;display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;gap:4px;padding:4px 0;width:100%}.ts-slider-group{flex:1;min-height:60px;display:flex;flex-direction:column;align-items:center;gap:3px;padding:2px 0;width:100%}.ts-slider{writing-mode:vertical-lr;direction:rtl;width:22px;flex:1;min-height:40px;accent-color:var(--accent);cursor:pointer}.batch-task-card{border:1px solid var(--border);border-radius:7px;overflow:hidden;background:var(--surface-muted);flex-shrink:0}.batch-task-header{display:flex;align-items:center;gap:.45rem;padding:.35rem .6rem;min-height:34px;cursor:pointer;background:var(--panel-bg);-webkit-user-select:none;user-select:none;transition:background .08s}.batch-task-header:hover{background:var(--surface-hover)}.batch-task-checkbox{flex-shrink:0;width:15px;height:15px;cursor:pointer}.batch-task-checkbox,.checkbox-row input[type=checkbox],.mobile-distort-toggle input[type=checkbox],.mobile-live-settings-toggle input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border:1.5px solid rgba(255,255,255,.55);border-radius:4px;background:transparent;display:inline-grid;place-content:center;cursor:pointer;transition:border-color .12s,background .12s}.batch-task-checkbox:before,.checkbox-row input[type=checkbox]:before,.mobile-distort-toggle input[type=checkbox]:before,.mobile-live-settings-toggle input[type=checkbox]:before{content:"";width:9px;height:9px;border-radius:2px;transform:scale(0);transition:transform .1s ease;background:var(--accent)}.batch-task-checkbox:checked,.checkbox-row input[type=checkbox]:checked,.mobile-distort-toggle input[type=checkbox]:checked,.mobile-live-settings-toggle input[type=checkbox]:checked{border-color:var(--accent)}.batch-task-checkbox:checked:before,.checkbox-row input[type=checkbox]:checked:before,.mobile-distort-toggle input[type=checkbox]:checked:before,.mobile-live-settings-toggle input[type=checkbox]:checked:before{transform:scale(1)}.batch-task-title{flex:1;font-size:12px;font-weight:600;color:var(--text-primary)}.batch-task-chevron{color:var(--text-muted);transition:transform .15s;flex-shrink:0;display:flex;align-items:center}.batch-task-chevron.open{transform:rotate(180deg)}.batch-task-body{padding:.5rem .6rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.5rem;animation:slideDown .15s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-theme=light] .ts-btn.active{background:var(--accent);border-color:var(--accent);color:#0a1a0d;transition:background 0s,border-color 0s,color 0s}[data-theme=light] .ts-btn.active:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:#0a1a0d}[data-theme=light] .icon-btn.active{background:#1a1a1a;color:#fff;border-color:#1a1a1a}[data-theme=light] input[type=range]{accent-color:var(--accent)}[data-theme=light] input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:13px;height:13px;border-radius:50%;background:var(--accent);border:2px solid #ffffff;box-shadow:0 0 0 1px #00b43c66;cursor:pointer;margin-top:-5px}[data-theme=light] input[type=range]::-moz-range-thumb{width:13px;height:13px;border-radius:50%;background:var(--accent);border:2px solid #ffffff;box-shadow:0 0 0 1px #00b43c66;cursor:pointer}[data-theme=light] input[type=range]::-webkit-slider-runnable-track{border-radius:999px;height:4px;background:transparent;border:1px solid var(--border)}[data-theme=light] input[type=range]::-moz-range-track{border-radius:999px;height:4px;background:transparent;border:1px solid var(--border)}[data-theme=light] .ts-btn:hover:not(:disabled):not(.active){background:var(--surface-hover);color:var(--text-primary);border-color:var(--border)}[data-theme=light] .btn:hover:not(:disabled),[data-theme=light] .btn-primary:hover:not(:disabled),[data-theme=light] .deps-install-btn:hover:not(:disabled),[data-theme=light] .topbar-demo-btn:hover:not(:disabled){border-color:#1f2329;color:#fff;background:#1f2329}[data-theme=light] .sidebar-batch-btn:hover:not(:disabled){border-color:#1f2329;color:#fff;background:#1f2329}[data-theme=light] .sidebar-add-btn:hover:not(:disabled){border-color:#1f2329;color:#fff;background:#1f2329}[data-theme=light] .tb-btn:hover:not(:disabled):not(.active){background:#1f2329;border-color:#1f2329;color:#fff}[data-theme=light] .topbar-github-link:hover{color:var(--text-primary);opacity:1}[data-theme=light] a{color:var(--text-primary);text-decoration:underline;text-underline-offset:2px}[data-theme=light] a:hover{opacity:.7}[data-theme=light] .sidebar-dropzone-link{color:var(--text-primary)}[data-theme=light] .tb-github-link{color:var(--text-primary)!important}[data-theme=light] .ts-flyout{box-shadow:0 8px 32px #0000001f}[data-theme=light] .ts-slider{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent}[data-theme=light] .ts-slider::-webkit-slider-runnable-track{background:#fff;border:1px solid var(--border-strong);border-radius:4px}[data-theme=light] .ts-slider::-moz-range-track{background:#fff;border:1px solid var(--border-strong);border-radius:4px}[data-theme=light] .ts-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);border:1px solid var(--border-strong);border-radius:50%;width:14px;height:14px;cursor:pointer}[data-theme=light] .ts-slider::-moz-range-thumb{background:var(--accent);border:1px solid var(--border-strong);border-radius:50%;width:14px;height:14px;cursor:pointer}[data-theme=light] .batch-checkbox{background:var(--text-primary);color:#fff}[data-theme=light] .color-preset-btn.active{background:var(--text-primary);border-color:var(--text-primary);color:#fff}[data-theme=light] .color-preset-btn:hover{border-color:var(--text-primary);color:var(--text-primary)}[data-theme=light] .processing-toggle-opt.active{background:#1a1a1a;color:#fff}[data-theme=light] .processing-toggle-opt:hover:not(.active){background:#1f2329;color:#fff}[data-theme=light] .topbar-tagline,[data-theme=light] .topbar-tagline-link,[data-theme=light] .topbar-github-link{color:#3d4047}[data-theme=light] .topbar-demo-btn{color:#1a1a1a;border-color:#c8ccd6}[data-theme=light] .topbar-privacy-badge{color:#1a1a1a!important;opacity:.9}[data-theme=light] .privacy-shield-btn,[data-theme=light] .privacy-shield-btn.secure{color:#1a1a1a}[data-theme=light] .privacy-shield-btn:hover{color:#000}[data-theme=light] .welcome-feature-card,[data-theme=light] .welcome-feature-card .material-symbols-outlined,[data-theme=light] .welcome-feature-title{color:#1a1a1a}[data-theme=light] .welcome-feature-card:hover,[data-theme=light] .welcome-feature-card:focus,[data-theme=light] .welcome-feature-card:focus-visible{background:#1f2329;border-color:#1f2329;color:#fff;outline:none}[data-theme=light] .welcome-feature-card:hover .welcome-feature-title,[data-theme=light] .welcome-feature-card:focus .welcome-feature-title,[data-theme=light] .welcome-feature-card:focus-visible .welcome-feature-title{color:#fff}[data-theme=light] .welcome-feature-card:hover .welcome-feature-desc,[data-theme=light] .welcome-feature-card:focus .welcome-feature-desc,[data-theme=light] .welcome-feature-card:focus-visible .welcome-feature-desc{color:#ffffffd1}[data-theme=light] .tb-btn.active{background:#1a1a1a;border-color:#1a1a1a;color:#fff}[data-theme=light] .tb-btn.active:hover:not(:disabled){background:#333;border-color:#333;color:#fff}[data-theme=light] .vectorize-panel{box-shadow:0 8px 24px #0000001f}[data-theme=light] .vectorize-label{color:#3d4047}[data-theme=light] .local-proof-badge{background:#22c55e14;border-color:#22c55e40;color:#16a34a}[data-theme=light] .local-proof-label{color:#16a34a}[data-theme=light] .local-proof-progress{background:#0000000f}.effect-picker-dock{position:fixed;left:0;right:0;bottom:0;z-index:10000;display:flex;justify-content:center;padding:0 12px calc(12px + env(safe-area-inset-bottom,0));pointer-events:none}.effect-picker-dialog{pointer-events:auto;width:min(640px,100%);display:flex;flex-direction:column;background:var(--panel-bg, #111);border:1px solid var(--border, rgba(255, 255, 255, .14));border-radius:14px;box-shadow:0 18px 60px #00000080;overflow:hidden;animation:effect-picker-rise .18s ease-out}@keyframes effect-picker-rise{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.effect-picker-dock{padding-bottom:calc(132px + env(safe-area-inset-bottom,0))}.effect-picker-dialog{width:100%}}.effect-picker-head{display:flex;align-items:center;gap:.6rem;padding:.7rem .85rem;border-bottom:1px solid var(--border, rgba(255, 255, 255, .1))}.effect-picker-title{font-size:.72rem;font-weight:700;letter-spacing:.08em;color:var(--text-secondary, #ddd)}.effect-picker-random{display:inline-flex;align-items:center;gap:.3rem;margin-left:auto;padding:.32rem .6rem;font-size:.68rem;font-weight:600;border-radius:999px;border:1px solid var(--border, rgba(255, 255, 255, .15));background:transparent;color:var(--text-secondary, #ccc);cursor:pointer}.effect-picker-random.active{border-color:var(--accent, #00ff78);color:var(--accent, #00ff78);background:#00ff781f}.effect-picker-ok{padding:.34rem .85rem;font-size:.7rem;font-weight:700;letter-spacing:.04em;border-radius:8px;border:1px solid var(--accent, #00ff78);background:#00ff7824;color:var(--accent, #00ff78);cursor:pointer}.effect-picker-ok:hover{background:#00ff7838}.effect-picker-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:#fff;cursor:pointer}.effect-picker-close:hover{background:#ffffff1a}.effect-picker-grid{padding:.7rem .85rem}.effect-picker-grid--emoji{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,46px);grid-auto-columns:46px;gap:8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.effect-picker-emoji{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:1.5rem;line-height:1;border:1px solid transparent;border-radius:8px;background:var(--surface, rgba(255, 255, 255, .04));cursor:pointer}.effect-picker-emoji:hover{background:var(--surface-hover, rgba(255, 255, 255, .1))}.effect-picker-emoji.active{border-color:var(--accent, #00ff78);background:#00ff7824}.effect-picker-sources{display:flex;flex-wrap:wrap;gap:6px;padding:.7rem .85rem 0}.effect-picker-source{padding:.3rem .6rem;font-size:.66rem;font-weight:600;border-radius:7px;border:1px solid var(--border, rgba(255, 255, 255, .15));background:transparent;color:var(--text-secondary, #ccc);cursor:pointer}.effect-picker-source.active{border-color:var(--accent, #00ff78);color:var(--accent, #00ff78)}.effect-picker-upload{display:inline-flex;align-items:center;gap:.3rem;margin-left:auto}.effect-picker-grid--image{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,76px);grid-auto-columns:76px;gap:8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.effect-picker-thumb{aspect-ratio:1;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:var(--surface, rgba(255, 255, 255, .04));cursor:pointer}.effect-picker-thumb img{width:100%;height:100%;object-fit:cover;display:block}.effect-picker-thumb.active{border-color:var(--accent, #00ff78)}.effect-picker-empty{grid-row:1 / 3;margin:0;padding:0 .8rem;display:flex;align-items:center;min-width:240px;text-align:left;font-size:.72rem;color:var(--text-muted, #888)}.app-shell-mobile{--mobile-accent: #00ff78;--mobile-accent-dim: rgba(0, 255, 120, .15);--mobile-panel-bg: rgba(8, 8, 8, .55);--mobile-download-blue: #3b7ddd;--mobile-pad-h: 14px;--mobile-glass-bg: rgba(8, 8, 8, .52);--mobile-glass-border: rgba(255, 255, 255, .1);--mobile-glass-blur: 20px;font-family:Archivo Variable,Archivo,ui-sans-serif,system-ui,-apple-system,sans-serif;font-stretch:125%;letter-spacing:.05em}.app-shell-mobile .mobile-glass-chrome{background:var(--mobile-glass-bg);border-color:var(--mobile-glass-border);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur))}@supports not (backdrop-filter: blur(1px)){.app-shell-mobile .mobile-glass-chrome{background:#080808eb}}.app-shell-mobile .video-controls-bar--hidden-mobile{display:none!important}.mobile-home-v2{display:flex;flex-direction:column;min-height:100%;min-height:100dvh;background:#000;padding:env(safe-area-inset-top) var(--mobile-pad-h) env(safe-area-inset-bottom)}.mobile-home-v2-header{display:flex;align-items:flex-start;justify-content:space-between;padding:10px 0 4px;flex-shrink:0}.mobile-home-v2-w3pn{height:30px;width:auto;object-fit:contain}.mobile-home-v2-w3pn-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.mobile-home-v2-about-link{background:none;border:none;color:#fff;font-size:.48rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:4px 0;cursor:pointer;max-width:42%;text-align:right;line-height:1.35}@media (min-width: 640px){.mobile-home-v2-header{align-items:center}.mobile-home-v2-about-link{font-size:.82rem;letter-spacing:.06em;max-width:none;line-height:1.2}}.mobile-home-v2-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;width:100%;min-height:0;padding:4px 0 16px}.mobile-home-v2-spiral-wrap{width:calc(100% + 2 * var(--mobile-pad-h));margin-left:calc(-1 * var(--mobile-pad-h));margin-right:calc(-1 * var(--mobile-pad-h));flex-shrink:0}.mobile-spiral-stack{position:relative;width:100%;display:block}.mobile-spiral-logo{width:100%;aspect-ratio:1;touch-action:none;cursor:grab}.mobile-spiral-hypno{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;mix-blend-mode:screen;will-change:opacity}.mobile-spiral-hypno svg{width:118%;height:118%;overflow:visible}.mobile-spiral-hypno g{will-change:transform}.mobile-spiral-logo img{width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.mobile-home-v2-wordmark{width:min(44vw,168px);height:auto;object-fit:contain;flex-shrink:0}.mobile-home-v2-cta{display:flex;flex-direction:column;align-items:center;gap:11px;padding-bottom:28px;flex-shrink:0}.mobile-cta-primary,.mobile-cta-secondary{width:min(72vw,268px);max-width:100%;box-sizing:border-box;text-align:center}.mobile-cta-primary{background:var(--mobile-accent);color:#000;border:none;border-radius:999px;padding:13px 24px;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.mobile-cta-secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:999px;padding:12px 24px;font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.mobile-cta-muted{background:none;border:none;color:#ffffff73;font-size:.56rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:8px 16px;min-width:180px;min-height:44px;cursor:pointer}.mobile-home-v2.drag-active:after{content:"Drop files here";position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00ff7814;border:2px dashed var(--mobile-accent);color:var(--mobile-accent);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;z-index:100;pointer-events:none}.mobile-about-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000}.mobile-about{display:flex;flex-direction:column;height:100%;height:100dvh;background:#000;color:#fff;font-family:Archivo Variable,Archivo,ui-sans-serif,system-ui,sans-serif;font-stretch:125%;letter-spacing:.05em}.app-shell-mobile>.mobile-editor-chrome{background:transparent}.mobile-about-header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:calc(env(safe-area-inset-top) + 6px) 16px 14px;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.mobile-about-wordmark{height:8px;width:auto;justify-self:center}.mobile-about-header-icon,.mobile-about-close{background:none;border:none;color:#fff;display:flex;align-items:center;justify-content:center;padding:8px;cursor:pointer}.mobile-about-scroll{flex:1;overflow-y:auto;padding:32px 28px 24px;-webkit-overflow-scrolling:touch}.mobile-about-intro{text-align:center;font-size:.78rem;line-height:1.65;margin:0 auto 14px;max-width:300px}.mobile-about-intro a{color:#fff;text-decoration:underline}.mobile-about-desc{text-align:center;font-size:.72rem;color:#ffffff9e;line-height:1.75;margin:0 auto 40px;max-width:310px}.mobile-about-section-title{text-align:center;font-size:.66rem;font-weight:700;letter-spacing:.14em;margin:0 0 22px}.mobile-about-scroll>.mobile-about-section-title:not(:first-of-type){margin-top:40px}.mobile-about-features{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;max-width:340px}.mobile-about-features li{display:flex;gap:10px;align-items:flex-start}.mobile-about-feature-title{font-size:.6rem;font-weight:700;text-transform:uppercase;line-height:1.35}.mobile-about-feature-desc{font-size:.56rem;color:#ffffff85;line-height:1.55;margin-top:5px}.mobile-about-local{list-style:none;margin:0 auto;padding:0 0 8px;display:flex;flex-direction:column;gap:24px;text-align:center;max-width:300px}.mobile-about-local-title{font-size:.6rem;font-weight:700;line-height:1.4}.mobile-about-local-desc{font-size:.56rem;color:#ffffff85;line-height:1.6;margin-top:6px}.mobile-about-footer{padding:22px 28px calc(22px + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.08);text-align:center;flex-shrink:0}.mobile-about-footer-text{font-size:.6rem;color:#ffffff8c;line-height:1.55;margin:0 0 12px}.mobile-about-feedback{background:none;border:none;color:#fff;text-decoration:underline;font-size:.58rem;cursor:pointer;margin-bottom:12px}.mobile-about-footer-row{display:flex;align-items:center;justify-content:space-between}.mobile-about-w3pn{height:28px;width:auto}.mobile-about-contribute{color:#fff;font-size:.52rem;font-weight:700;letter-spacing:.1em;text-decoration:none}.mobile-topbar-v2{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:44px;padding:env(safe-area-inset-top) var(--mobile-pad-h) 0;background:var(--mobile-glass-bg);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur));border-bottom:1px solid var(--mobile-glass-border)}.mobile-topbar-v2-left{display:flex;align-items:center;gap:6px;justify-self:start}.mobile-topbar-v2-center{justify-self:center}.mobile-topbar-v2-right{justify-self:end}.mobile-topbar-v2-icon{background:none;border:none;color:#fff;padding:6px;display:flex;align-items:center;cursor:pointer}.mobile-topbar-v2-brand{background:none;border:none;padding:4px 0;cursor:pointer}.mobile-topbar-v2-brand img{height:8px;width:auto;display:block}.mobile-topbar-v2-live-badge{color:#ff3b3b;font-size:.48rem;font-weight:700;letter-spacing:.06em}.mobile-topbar-v2-live-pill{display:flex;align-items:center;justify-content:center;gap:5px;width:auto;background:none;color:var(--mobile-accent);border:none;border-radius:999px;padding:5px 8px;font-size:.62rem;font-weight:700;letter-spacing:.08em;cursor:pointer}.mobile-topbar-v2-live-pill .material-symbols-rounded,.mobile-topbar-v2-live-pill .material-symbols-outlined{color:var(--mobile-accent)}.mobile-editor-toolbar-v2{background:var(--mobile-glass-bg);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur));border-bottom:1px solid var(--mobile-glass-border)}.mobile-editor-toolbar-v2-row{display:flex;align-items:center;gap:8px;padding:8px var(--mobile-pad-h);min-height:44px}.mobile-tb-v2-summary{flex:1;min-width:0;display:flex;align-items:center;gap:6px;background:none;border:none;color:#fff;font-size:.58rem;text-align:left;cursor:pointer;padding:0}.mobile-tb-v2-name{font-weight:600;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-tb-v2-dims{color:#ffffff73;flex-shrink:0}.mobile-tb-v2-chevron{flex-shrink:0;transition:transform .15s}.mobile-tb-v2-chevron.open{transform:rotate(180deg)}.mobile-tb-v2-download{flex-shrink:0;width:54px;height:36px;border-radius:8px;background:var(--mobile-download-blue);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.mobile-tb-v2-download:disabled{opacity:.4}.mobile-editor-toolbar-v2-panel{padding:10px var(--mobile-pad-h) 12px;background:#00000040;border-top:1px solid var(--mobile-glass-border);font-size:.55rem}.mobile-tb-v2-panel-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.mobile-tb-v2-label{color:#ffffff8c;min-width:52px;text-transform:uppercase}.mobile-tb-v2-res{display:flex;align-items:center;gap:4px}.mobile-tb-v2-res input,.mobile-editor-toolbar-v2 select{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:4px;padding:4px 6px;font-size:.55rem;width:80px}.mobile-tb-v2-ok{background:var(--mobile-accent);color:#000;border:none;border-radius:6px;padding:6px 14px;font-size:.55rem;font-weight:700;cursor:pointer}.mobile-tb-v2-meta{color:#ffffff73;font-size:.5rem;margin-bottom:6px}.mobile-tb-v2-advanced{font-size:.5rem;color:#fff6}.app-shell-mobile{--mobile-draw-mask-h: 0px}.app-shell-mobile--image:has(.mobile-shell-floating){--mobile-draw-mask-h: 44px}.app-shell-mobile--video:has(.mobile-video-canvas-controls .mobile-draw-mask-panel){--mobile-draw-mask-h: 44px}.mobile-canvas-controls,.mobile-video-canvas-controls{position:absolute;top:0;right:0;bottom:0;left:0;z-index:45;pointer-events:none}.mobile-canvas-bottom-bar--image,.mobile-canvas-bottom-bar--video{bottom:calc(var(--mobile-bottom-toolbar-h, 128px) + var(--mobile-draw-mask-h, 0px) + 8px + env(safe-area-inset-bottom,0))}.mobile-canvas-action-cluster{pointer-events:auto;display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:nowrap;min-width:0;position:relative}.mobile-video-frame-indicator{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);min-width:64px;padding:4px 8px;border-radius:999px;border:1px solid rgba(0,255,120,.28);background:#000000b8;color:var(--mobile-accent);font-size:.58rem;font-weight:700;letter-spacing:.04em;text-align:center;white-space:nowrap;box-shadow:0 0 18px #00ff7829;pointer-events:none}.mobile-video-frame-indicator--snapshot{bottom:calc(100% + 6px)}.mobile-canvas-secondary-btn{pointer-events:auto;background:transparent;color:#ffffffb3;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:8px 10px;font-size:.5rem;font-weight:600;letter-spacing:.06em;white-space:nowrap;cursor:pointer;flex-shrink:0}.mobile-canvas-secondary-btn.active{border-color:var(--mobile-accent);color:var(--mobile-accent)}.mobile-canvas-secondary-btn:disabled{opacity:.4;cursor:not-allowed}.mobile-anonymize-btn--save{background:transparent;color:var(--mobile-accent);border:2px solid var(--mobile-accent);box-shadow:none}.mobile-anonymize-btn--save-video,.app-shell-mobile .mobile-anonymize-btn--save-video{min-width:142px;background:transparent;color:var(--mobile-accent);border-color:var(--mobile-accent)}.mobile-canvas-frame-nav{position:absolute;right:var(--mobile-pad-h);bottom:calc(var(--mobile-bottom-toolbar-h, 128px) + var(--mobile-draw-mask-h, 0px) + 56px + env(safe-area-inset-bottom,0));display:flex;gap:6px;pointer-events:auto}.mobile-video-canvas-controls .mobile-draw-mask-panel{position:absolute;left:0;right:0;bottom:calc(var(--mobile-bottom-toolbar-h, 128px) + env(safe-area-inset-bottom,0));border-top:1px solid var(--mobile-glass-border)}.mobile-shell-floating{position:fixed;left:0;right:0;bottom:calc(var(--mobile-bottom-toolbar-h, 128px) + env(safe-area-inset-bottom,0));z-index:28;pointer-events:auto}.mobile-shell-floating .mobile-draw-mask-panel{border-top:1px solid var(--mobile-glass-border)}.mobile-draw-mask-panel{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px var(--mobile-pad-h);background:var(--mobile-glass-bg);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur));border-top:1px solid var(--mobile-glass-border)}.mobile-draw-mask-tools{display:flex;gap:12px}.mobile-draw-mask-tool{display:flex;flex-direction:column;align-items:center;gap:2px;background:none;border:none;color:#ffffff8c;font-size:.45rem;letter-spacing:.06em;cursor:pointer;padding:2px 4px}.mobile-draw-mask-tool.active{color:var(--mobile-accent)}.mobile-draw-mask-range{display:flex;align-items:center;gap:6px;font-size:.52rem;color:#ffffffa6}.mobile-draw-mask-range input{width:40px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:4px;padding:4px;font-size:.55rem;text-align:center}.mobile-draw-mask-clear{background:none;border:none;color:#ffffff73;font-size:.48rem;letter-spacing:.06em;cursor:pointer}.mobile-gallery-select-link{background:none;border:none;color:var(--mobile-accent);font-size:inherit;font-weight:700;letter-spacing:.08em;cursor:pointer;padding:0}.mobile-gallery-video-badge{position:absolute;bottom:4px;left:4px;background:#000000bf;color:#fff;font-size:.42rem;font-weight:700;letter-spacing:.06em;padding:2px 5px;border-radius:3px}.mobile-gallery-item-thumb{position:relative}.app-shell-mobile .mobile-gallery-item.selected .mobile-gallery-item-thumb{outline:2px solid var(--mobile-accent);outline-offset:1px}.app-shell-mobile .mobile-gallery-add{background:var(--mobile-accent);color:#000}.app-shell-mobile .mobile-gallery-download-all{background:var(--mobile-download-blue)}.app-shell-mobile .mobile-tool-btn.active,.app-shell-mobile .mobile-tool-btn.selected,.app-shell-mobile .mobile-tool-btn-face.detect-on{color:var(--mobile-accent);background:var(--mobile-accent-dim)}.app-shell-mobile input[type=range]::-webkit-slider-thumb,.app-shell-mobile input[type=range]::-moz-range-thumb{background:var(--mobile-accent)}.app-shell-mobile .mobile-anonymize-btn{background:var(--mobile-accent);color:#000;border-radius:999px;padding:10px 20px;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.app-shell-mobile .mobile-effect-grid .ts-effect-tile.active{border-color:var(--mobile-accent);color:var(--mobile-accent)}.app-shell-mobile .mobile-tool-drawer-title{letter-spacing:.12em;font-size:.62rem}.app-shell-mobile>.mobile-shell-bottom{bottom:0}.app-shell-mobile .mobile-bottom-toolbar{padding-left:var(--mobile-pad-h);padding-right:var(--mobile-pad-h);background:var(--mobile-glass-bg);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur));border-top:1px solid var(--mobile-glass-border)}.mobile-drawer-bottom--glass{background:var(--mobile-glass-bg, rgba(8, 8, 8, .72));backdrop-filter:blur(var(--mobile-glass-blur, 20px));-webkit-backdrop-filter:blur(var(--mobile-glass-blur, 20px))}.mobile-drawer-side--solid{background:#0a0a0a;backdrop-filter:none;-webkit-backdrop-filter:none;border-right:1px solid rgba(255,255,255,.08)}.mobile-drawer-header-v2{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;min-height:44px;padding:0 var(--mobile-pad-h);flex-shrink:0}.mobile-drawer-header-v2-title{margin:0;text-align:center;font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.mobile-drawer-header-v2-btn{background:none;border:none;color:#fff;display:flex;align-items:center;justify-content:center;padding:8px;cursor:pointer}.mobile-drawer-header-v2-close{justify-self:end;background:none;border-radius:6px;width:32px;height:32px}.mobile-drawer-header-v2-close:hover{background:#ffffff1a}.mobile-distort-settings-v2{padding:4px calc(var(--mobile-pad-h) + 8px) 12px;display:flex;flex-direction:column;gap:12px;min-height:220px}.mobile-slider-row-v2{display:grid;grid-template-columns:72px 1fr 36px;align-items:center;gap:8px;min-height:36px}.mobile-slider-row-v2-label{font-size:.52rem;color:#ffffffa6;text-transform:capitalize}.mobile-slider-row-v2-val{font-size:.52rem;color:#ffffffd9;text-align:right;font-variant-numeric:tabular-nums}.mobile-slider-row-v2 input[type=range]{width:100%}.mobile-distort-select{grid-column:2 / -1;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:4px;padding:6px 8px;font-size:.55rem}.mobile-distort-list{padding:0 var(--mobile-pad-h)}.mobile-distort-list-row{display:flex;align-items:center;justify-content:space-between;min-height:38px;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer}.mobile-distort-list-row.active .mobile-distort-toggle{color:var(--mobile-accent)}.mobile-distort-toggle{display:flex;align-items:center;gap:10px;font-size:.55rem;font-weight:600;letter-spacing:.06em;flex:1;cursor:pointer}.mobile-distort-settings-btn{background:none;border:none;color:#ffffff73;padding:8px;cursor:pointer}.mobile-distort-list-actions{display:flex;gap:8px;padding:12px var(--mobile-pad-h) calc(8px + env(safe-area-inset-bottom))}.mobile-distort-reset-btn{flex:1;background:transparent;border:1px solid rgba(255,255,255,.25);color:#ffffffa6;border-radius:999px;padding:10px;font-size:.52rem;font-weight:600;letter-spacing:.08em;cursor:pointer}.mobile-distort-apply-btn{flex:1;background:var(--mobile-accent);color:#000;border:none;border-radius:999px;padding:10px;font-size:.52rem;font-weight:700;letter-spacing:.08em;cursor:pointer}.mobile-distort-apply-btn:disabled{opacity:.4}.mobile-video-progress{position:absolute;left:var(--mobile-pad-h);right:var(--mobile-pad-h);bottom:calc(var(--mobile-bottom-toolbar-h) + var(--mobile-draw-mask-h, 0px) + 56px + env(safe-area-inset-bottom));z-index:50;pointer-events:auto}.mobile-video-progress-card{background:var(--mobile-glass-bg);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur));border:1px solid var(--mobile-glass-border);border-radius:10px;padding:10px 12px}.mobile-video-progress-head{display:flex;align-items:center;gap:8px;font-size:.55rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}.mobile-video-progress-pct{margin-left:auto;color:var(--mobile-accent);font-variant-numeric:tabular-nums}.mobile-video-progress-track{height:4px;background:#ffffff1f;border-radius:999px;overflow:hidden}.mobile-video-progress-fill{height:100%;background:var(--mobile-accent);border-radius:999px;transition:width .12s ease}.mobile-video-progress-foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px;font-size:.48rem;color:#ffffff80}.mobile-video-progress-cancel{background:none;border:none;color:#ffffffa6;font-size:.5rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;padding:2px 0}.app-shell-mobile .mobile-drawer-header h2{letter-spacing:.14em;text-transform:uppercase;font-size:.6rem}.app-shell-mobile .mobile-drawer-body,.app-shell-mobile .mobile-drawer-header{padding-left:var(--mobile-pad-h);padding-right:var(--mobile-pad-h)}.app-shell-mobile .mobile-live-floating-controls{background:var(--mobile-glass-bg);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur))}@media (max-width: 480px){.mobile-shell,.app-shell-mobile{--mobile-topbar-h: 44px;--mobile-bottom-toolbar-h: 124px;--mobile-pad-h: 9px;--mobile-glass-bg: rgba(5, 5, 5, .86);--mobile-glass-border: rgba(255, 255, 255, .09);background:#000}.mobile-home-v2{padding-left:20px;padding-right:20px}.mobile-home-v2-header{padding-top:18px}.mobile-home-v2-w3pn{height:29px}.mobile-home-v2-about-link{font-size:.72rem;line-height:1.1;max-width:120px}.mobile-home-v2-center{justify-content:flex-start;gap:19px;padding-top:2px;padding-bottom:0}.mobile-home-v2-spiral-wrap{width:min(100vw,407px);margin-top:-2px;margin-left:0;margin-right:0;transform:none;align-self:center}.mobile-home-v2-wordmark{width:184px}.mobile-home-v2-cta{gap:24px;padding-bottom:calc(30px + env(safe-area-inset-bottom,0))}.mobile-cta-primary,.mobile-cta-secondary{width:268px;min-height:48px;font-size:.92rem;letter-spacing:.065em}.mobile-cta-primary{padding:14px 24px}.mobile-cta-secondary{padding:13px 24px;border-color:#ffffffe6}.mobile-cta-muted{margin-top:4px;font-size:.96rem;color:#ffffff73}.mobile-topbar-v2{min-height:44px;height:calc(44px + env(safe-area-inset-top,0));padding:env(safe-area-inset-top,0) 8px 0;background:#080808}.mobile-topbar-v2-icon{width:44px;height:44px;justify-content:center;padding:0}.mobile-topbar-v2-brand img,.mobile-about-wordmark{height:15px}.mobile-topbar-v2-live-pill{height:30px;padding:0 8px;border:none;border-radius:7px;background:none;color:var(--mobile-accent);font-size:.66rem;letter-spacing:.05em}.mobile-topbar-v2-live-badge{font-size:.52rem}.mobile-editor-toolbar-v2-row{min-height:48px;padding:4px 8px 6px}.mobile-tb-v2-summary{align-self:stretch;font-size:.58rem;letter-spacing:0}.mobile-tb-v2-name{text-transform:none}.mobile-tb-v2-download{width:54px;height:34px;border-radius:9px;background:#415fe6;box-shadow:0 0 14px #415fe673}.app-shell-mobile .workspace-mobile .viewer,.app-shell-mobile .workspace-mobile .editor-area{background:#000}.mobile-canvas-bottom-bar--image,.mobile-canvas-bottom-bar--video{bottom:calc(var(--mobile-bottom-toolbar-h, 124px) + var(--mobile-draw-mask-h, 0px) + 12px + env(safe-area-inset-bottom,0))}.mobile-canvas-bottom-bar{grid-template-columns:34px minmax(0,1fr) 34px;gap:8px;padding:0 9px;min-height:48px}.mobile-canvas-action-cluster{gap:6px;width:100%}.mobile-canvas-secondary-btn,.app-shell-mobile .mobile-anonymize-btn{height:40px;min-height:40px;border-radius:7px;padding:0 10px;font-size:.66rem;line-height:1.08;letter-spacing:.04em;font-weight:700;text-align:center;white-space:normal;box-shadow:none}.mobile-canvas-secondary-btn{width:75px;min-width:75px;flex:0 0 75px;border-color:#ffffff47;background:#00000052;color:#fff}.mobile-canvas-secondary-btn:focus,.mobile-zoom-side-btn:focus,.mobile-anonymize-btn:focus{outline:none}.mobile-canvas-secondary-btn:focus-visible,.mobile-zoom-side-btn:focus-visible,.mobile-anonymize-btn:focus-visible{outline:1px solid var(--mobile-accent);outline-offset:2px}.mobile-canvas-secondary-btn.active{border-color:var(--mobile-accent);color:var(--mobile-accent);background:transparent}.app-shell-mobile .mobile-anonymize-btn{min-width:130px;border:1px solid var(--mobile-accent);color:#000;background:var(--mobile-accent)}.app-shell-mobile .mobile-anonymize-btn:disabled,.app-shell-mobile .mobile-anonymize-btn--disabled{border-color:#ffffff14;background:#555;color:#000000e6;opacity:1}.mobile-anonymize-btn--save,.app-shell-mobile .mobile-anonymize-btn--save{width:82px;min-width:82px;flex-basis:82px;border:1px solid var(--mobile-accent);background:transparent;color:var(--mobile-accent)}.mobile-video-canvas-controls .mobile-canvas-secondary-btn{min-width:76px}.mobile-video-canvas-controls .mobile-canvas-secondary-btn:last-child{min-width:80px}.mobile-zoom-side-btn{width:34px;height:34px;border-radius:8px;background:#0a0a0a9e}.mobile-draw-mask-panel{min-height:124px;padding:14px 20px 16px;background:#020202e0}.app-shell-mobile--image:has(.mobile-shell-floating),.app-shell-mobile--video:has(.mobile-video-canvas-controls .mobile-draw-mask-panel){--mobile-bottom-toolbar-h: 0px;--mobile-draw-mask-h: 124px}.app-shell-mobile--image:has(.mobile-shell-floating)>.mobile-shell-bottom,.app-shell-mobile--video:has(.mobile-video-canvas-controls .mobile-draw-mask-panel)>.mobile-shell-bottom{display:none}.app-shell-mobile--image:has(.mobile-shell-floating) .mobile-shell-floating{bottom:0}.app-shell-mobile--video:has(.mobile-video-canvas-controls .mobile-draw-mask-panel) .mobile-video-canvas-controls .mobile-draw-mask-panel{bottom:0}.mobile-draw-mask-tools{gap:24px}.mobile-draw-mask-tool{min-width:54px;gap:5px;font-size:.56rem}.mobile-draw-mask-range{margin-left:auto;font-size:.86rem;letter-spacing:0;color:#ffffff6b}.mobile-draw-mask-range input{width:72px;height:32px;border-radius:5px;text-align:left;padding-left:10px;font-size:.82rem;background:#ffffff09}.app-shell-mobile .mobile-bottom-toolbar{min-height:var(--mobile-bottom-toolbar-h);padding:11px 8px calc(8px + env(safe-area-inset-bottom,0));background:#060606eb}.mobile-sliders-row{gap:10px;margin-bottom:9px}.mobile-slider-group{grid-template-columns:26px 1fr 34px;gap:7px}.mobile-slider-label,.mobile-slider-val{font-size:.58rem}.mobile-slider-val{font-variant-numeric:tabular-nums;text-align:right}.mobile-tool-categories{grid-template-columns:repeat(6,minmax(48px,1fr));gap:4px}.mobile-tool-btn{min-width:0;min-height:46px;border-radius:7px;gap:2px}.mobile-tool-btn-label{font-size:.52rem;letter-spacing:.045em}.mobile-face-count-badge{top:-8px;right:-13px}.mobile-drawer-side{width:min(90vw,356px);max-width:356px}.mobile-drawer-side--solid{background:#060606f5}.mobile-drawer-header{min-height:42px;padding:0 16px 0 20px}.mobile-drawer-header h2{font-size:.8rem;letter-spacing:.045em}.mobile-gallery-actions{gap:8px;padding:10px 9px 9px}.mobile-gallery-add,.mobile-gallery-batch{min-height:32px;border-radius:7px;font-size:.72rem;letter-spacing:.05em}.mobile-gallery-meta{padding:13px 20px;font-size:.82rem;color:#fff}.mobile-gallery-view-btn{width:28px;height:28px;min-width:28px}.mobile-gallery-select-link{color:var(--mobile-accent)}.mobile-gallery-grid{gap:9px;padding:0 10px 16px}.mobile-gallery-item{border-width:1px;border-radius:7px;background:#1414148c}.mobile-gallery-item.selected{border-color:var(--mobile-accent);box-shadow:0 0 0 1px var(--mobile-accent)}.mobile-gallery-item-thumb{aspect-ratio:1.18 / 1;background:#050505}.mobile-gallery-item img{width:100%;height:100%;object-fit:cover}.mobile-gallery-item-name{padding:8px 8px 9px;font-size:.62rem;letter-spacing:0}.mobile-gallery-download-all{height:36px;border-radius:8px;font-size:.66rem;letter-spacing:.055em}.mobile-about-header{grid-template-columns:44px 1fr 44px;padding:env(safe-area-inset-top,0) 8px 0;min-height:calc(44px + env(safe-area-inset-top,0));border-bottom:none}.mobile-about-scroll{padding:20px 22px 18px}.mobile-about-intro,.mobile-about-desc{max-width:340px;font-size:.86rem;line-height:1.42;margin-bottom:22px}.mobile-about-section-title{font-size:.82rem;margin-bottom:24px}.mobile-about-features{gap:24px 18px}.mobile-about-feature-title{font-size:.68rem}.mobile-about-feature-desc,.mobile-about-local-desc{font-size:.62rem;line-height:1.25}.mobile-about-local{gap:24px}.mobile-about-local-title{font-size:.78rem}.mobile-about-footer{padding:17px 20px calc(14px + env(safe-area-inset-bottom,0))}.mobile-about-footer-text{font-size:.74rem;color:#fff}.mobile-about-feedback{font-size:.72rem}.mobile-about-w3pn{height:29px}.mobile-about-contribute{font-size:.76rem}.mobile-live{background:#000}.mobile-live .mobile-topbar-v2{background:#000;border-bottom:none}.mobile-live-preview{flex:0 0 59.5%;min-height:0;align-items:center;background:#000}.mobile-live-preview--contain .mobile-live-canvas,.mobile-live-canvas--contain{width:100%;max-width:100%;height:auto;object-fit:contain}.mobile-live-floating-controls{bottom:calc(var(--mobile-bottom-toolbar-h) + 15px + env(safe-area-inset-bottom,0));padding:0 26px;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.mobile-live-capture-btn{width:68px;height:68px;border-width:2px}.mobile-live-settings-btn,.mobile-live-aspect-btn,.mobile-live-side-btn{width:46px;min-width:46px;height:46px;margin-left:0;border-radius:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}}.app-shell-mobile,.app-shell-mobile button,.app-shell-mobile input,.app-shell-mobile select,.app-shell-mobile textarea{font-family:Archivo Variable,Archivo,ui-sans-serif,system-ui,-apple-system,sans-serif;font-stretch:125%}.app-shell-mobile .material-symbols-outlined{font-family:Material Symbols Outlined;font-stretch:normal;letter-spacing:normal}.mobile-home-v2-wordmark-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:0;margin-top:12px;line-height:0;cursor:pointer}.mobile-home-v2-spiral-wrap{width:min(100vw,420px);max-width:420px;margin-left:calc(50% - min(50vw,210px));margin-right:calc(50% - min(50vw,210px))}.mobile-topbar-v2-brand img,.mobile-about-wordmark{height:10px}.mobile-topbar-v2-left{transform:translate(-8px)}.mobile-topbar-v2-brand{display:inline-flex;align-items:center;justify-content:center}.mobile-tb-v2-name{margin-left:8px}.mobile-tb-v2-size-format-row{flex-wrap:wrap;padding-left:16px}.mobile-tb-v2-size-format-row .mobile-tb-v2-label:not(:first-child){min-width:auto;margin-left:8px}.mobile-tb-v2-quality-row{gap:8px;margin-bottom:0}.mobile-tb-v2-quality-row .mobile-tb-v2-label{min-width:auto;flex-shrink:0}.mobile-tb-v2-quality-row input[type=range]{flex:1 1 auto;min-width:0;max-width:calc(100% - 24px)}.mobile-tb-v2-preview{flex-shrink:0;color:#ffffff80;font-size:.52rem}.mobile-tb-v2-quality-row .mobile-tb-v2-ok{flex-shrink:0;min-width:54px}.mobile-gallery-meta,.mobile-gallery-select-link{font-weight:400}.mobile-gallery-item-shell,.mobile-gallery-list-shell{position:relative;min-width:0}.mobile-gallery-item-shell .mobile-gallery-item,.mobile-gallery-list-shell .mobile-gallery-list-item{width:100%;height:100%}.mobile-gallery-item-shell.selected .mobile-gallery-item{border-color:var(--mobile-accent);box-shadow:0 0 0 1px var(--mobile-accent)}.mobile-gallery-list-shell.selected .mobile-gallery-list-item{border-color:var(--mobile-accent)}.mobile-gallery-check{position:absolute;top:7px;left:7px;z-index:2;width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,.75);background:#0000009e;color:#000;display:inline-flex;align-items:center;justify-content:center;font-size:0;box-shadow:0 2px 10px #00000059}.mobile-gallery-check.checked{background:var(--mobile-accent);border-color:var(--mobile-accent);font-size:.68rem;font-weight:700}.mobile-gallery-delete{position:absolute;top:7px;right:7px;z-index:3;width:28px;height:28px;border:1px solid rgba(255,255,255,.18);border-radius:7px;background:#000000ad;color:#fff;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.mobile-gallery-delete--list{top:50%;right:8px;transform:translateY(-50%)}.mobile-gallery-list-shell .mobile-gallery-list-item{padding-right:42px}.mobile-gallery-add,.mobile-gallery-batch,.mobile-gallery-download-all,.mobile-batch-process-btn{text-transform:uppercase;letter-spacing:.055em}.mobile-gallery-download-all,.mobile-batch-process-btn{background:var(--mobile-download-blue);color:#fff;border:none;box-shadow:0 6px 22px #3b7ddd6b;font-weight:700}.mobile-batch-process-btn{width:100%;min-height:40px;border-radius:8px;font-size:.66rem;letter-spacing:.055em;cursor:pointer}.mobile-batch-process-btn:disabled{opacity:.45;cursor:not-allowed}.mobile-drawer-body:has(.batch-task-card){display:flex;flex-direction:column;gap:8px}.app-shell-mobile .batch-task-card{margin:0}.app-shell-mobile .batch-task-body.inactive{opacity:.82}.app-shell-mobile .batch-task-body .tb-quality-wrap{display:grid;grid-template-columns:minmax(0,1fr) 56px auto;gap:8px;width:100%}.app-shell-mobile .batch-task-body .tb-quality-slider{width:100%;min-width:0}.app-shell-mobile .batch-task-body .tb-quality-num{width:56px;min-width:56px;text-align:center}.app-shell-mobile .batch-task-body .two-col{gap:8px}.app-shell-mobile .batch-task-body .field-input,.app-shell-mobile .batch-task-body .field-select{min-height:38px;font-size:.68rem}.mobile-canvas-top-actions{position:absolute;top:calc(var(--mobile-topbar-h, 44px) + 49px + 12px + env(safe-area-inset-top,0));left:8px;z-index:2;display:flex;align-items:center;gap:6px;pointer-events:auto}.mobile-canvas-top-btn{min-height:30px;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:#00000094;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 8px;font-size:.52rem;font-weight:700;letter-spacing:.055em;cursor:pointer;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.mobile-canvas-top-btn:disabled{opacity:.45;cursor:not-allowed}.mobile-canvas-bottom-bar--image{grid-template-columns:34px minmax(0,1fr) 34px}.mobile-canvas-bottom-bar--image .mobile-canvas-action-cluster{justify-self:center;width:auto}.mobile-canvas-bottom-bar--video .mobile-canvas-action-cluster .mobile-anonymize-btn{margin:0 16px}.mobile-image-action-stack{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.mobile-image-action-stack>*{pointer-events:auto}.mobile-image-action-stack .mobile-zoom-indicator{position:absolute;bottom:calc(100% + 5px);left:50%;transform:translate(-50%);padding:0;background:transparent;color:#ffffffad;font-size:.54rem;pointer-events:none;opacity:0;transition:opacity .25s ease;white-space:nowrap}.mobile-image-action-stack .mobile-zoom-indicator.visible{opacity:1;font-weight:600;font-family:Archivo Variable,Archivo,ui-sans-serif,system-ui,-apple-system,sans-serif;letter-spacing:.04em}.mobile-live-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:28px;line-height:1.45}.mobile-live-error p{max-width:320px;margin:0}.mobile-live-error .btn-primary{width:min(100%,260px);min-height:42px;border-radius:999px;border:1px solid var(--mobile-accent);background:var(--mobile-accent);color:#000;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.mobile-live-error .btn-primary+.btn-primary{background:transparent;color:#fff;border-color:#ffffff73}.mobile-about-backdrop{animation:mobile-about-backdrop-in .18s ease-out}.mobile-about{animation:mobile-about-slide-down .26s cubic-bezier(.2,.8,.2,1)}@keyframes mobile-about-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes mobile-about-slide-down{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.mobile-about-header{border-bottom:1px solid rgba(255,255,255,.2)}.mobile-about-header-spacer{width:44px;height:44px}.mobile-about-scroll{padding-left:22px;padding-right:22px}.mobile-about-section-title{font-size:1.07rem}.mobile-about-features{text-align:center;gap:28px 18px}.mobile-about-features li{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;text-align:center}.mobile-about-feature-title,.mobile-about-local-title{font-size:.93rem}.mobile-about-feature-desc{margin-top:0}.mobile-about-rule{width:100vw;height:1px;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:#fff3}.mobile-about-rule--features{margin-top:30px;margin-bottom:34px}.mobile-about-feedback{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 13px;border:1px solid var(--mobile-accent);border-radius:999px;background:transparent;color:var(--mobile-accent);text-decoration:none;text-transform:uppercase;font-size:.62rem;font-weight:700;letter-spacing:.055em;margin-bottom:16px}.mobile-about-rule--feedback{margin-top:0;margin-bottom:16px}.mobile-about-footer{border-top:1px solid rgba(255,255,255,.2)}.mobile-about-footer-row{padding-top:0}.mobile-about-w3pn{height:28px}@media (max-width: 480px){.mobile-home-v2-spiral-wrap{width:min(100vw,420px);max-width:420px;margin-left:calc(50% - min(50vw,210px));margin-right:calc(50% - min(50vw,210px))}.mobile-home-v2-wordmark{width:184px}.mobile-topbar-v2-brand img,.mobile-about-wordmark{height:10px}.mobile-topbar-v2-left{transform:translate(-8px)}.mobile-gallery-meta{font-weight:400}.mobile-gallery-download-all{font-size:.78rem;letter-spacing:.055em}.mobile-canvas-bottom-bar--image{bottom:calc(var(--mobile-bottom-toolbar-h, 124px) + 12px + env(safe-area-inset-bottom,0))}.mobile-image-action-stack .mobile-zoom-indicator{font-size:.54rem}.app-shell-mobile .mobile-canvas-bottom-bar--image .mobile-anonymize-btn{min-width:114px}.mobile-about-section-title{font-size:1.07rem}.mobile-about-feature-title,.mobile-about-local-title{font-size:.93rem}}.app-shell-mobile .mobile-about{letter-spacing:.015em}.app-shell-mobile .mobile-about-scroll{padding:28px 24px 26px}.app-shell-mobile .mobile-about-intro{font-size:.76rem;font-weight:400;line-height:1.55;margin-bottom:10px}.app-shell-mobile .mobile-about-desc{font-size:.72rem;font-weight:400;line-height:1.62;color:#ffffffb3;margin-bottom:34px}.app-shell-mobile .mobile-about-section-title{font-size:.9rem;font-weight:500;letter-spacing:.1em;margin-bottom:26px}.app-shell-mobile .mobile-about-features{gap:28px 18px}.app-shell-mobile .mobile-about-features li{align-items:center;text-align:center;gap:7px}.app-shell-mobile .mobile-about-feature-title,.app-shell-mobile .mobile-about-local-title{font-size:.74rem;font-weight:500;line-height:1.35}.app-shell-mobile .mobile-about-feature-desc,.app-shell-mobile .mobile-about-local-desc{font-size:.62rem;line-height:1.55;color:#ffffff80}.app-shell-mobile .mobile-about-local{gap:26px}.app-shell-mobile .mobile-about-footer{padding-top:20px}.app-shell-mobile .mobile-about-footer-text{font-size:.66rem;font-weight:400;color:#ffffffb8}.app-shell-mobile .mobile-about-feedback{margin:8px auto 18px}.app-shell-mobile .mobile-draw-mask-panel{gap:12px}.app-shell-mobile .mobile-draw-mask-tools{flex:1;justify-content:space-between;gap:8px}.app-shell-mobile .mobile-draw-mask-tool{min-width:0;flex:1}.app-shell-mobile .mobile-gallery-download-all,.app-shell-mobile .mobile-batch-process-btn{font-size:.66rem;letter-spacing:.055em}.app-shell-mobile .mobile-video-settings-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:8px;width:100%}.app-shell-mobile .mobile-video-setting-card{min-width:0;min-height:54px;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:8px 10px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0b}.app-shell-mobile .mobile-video-setting-card--format,.app-shell-mobile .mobile-video-setting-card--wide{grid-column:1 / -1}.app-shell-mobile .mobile-video-setting-card strong{font-size:.78rem;font-weight:500;color:#fff}.app-shell-mobile .mobile-video-setting-card small,.app-shell-mobile .mobile-video-setting-card div{font-size:.58rem;color:#ffffff7a}.app-shell-mobile .mobile-video-setting-card select{width:100%;min-height:34px}.mobile-about-header--logoless{border-bottom:none!important}.mobile-about-hero-logo{display:block;height:34px;width:auto;margin:0 auto 16px;object-fit:contain}.app-shell-desktop-v2 .mobile-about-hero-logo{height:48px;margin-bottom:16px}.app-shell-desktop-v2 .mobile-about-header{grid-template-columns:56px 1fr 56px;padding:18px 32px}.app-shell-desktop-v2 .mobile-about-wordmark{height:16px}.app-shell-desktop-v2 .mobile-about-scroll{overflow-y:auto;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:8px;width:100%;max-width:720px;margin:0 auto;padding:28px 32px}.app-shell-desktop-v2 .mobile-about-intro{font-size:1rem;line-height:1.5;max-width:720px;margin-bottom:4px}.app-shell-desktop-v2 .mobile-about-desc{font-size:.9rem;line-height:1.55;max-width:720px;margin-bottom:18px}.app-shell-desktop-v2 .mobile-about-section-title{font-size:.92rem;letter-spacing:.16em;margin:0 0 16px}.app-shell-desktop-v2 .mobile-about-scroll>.mobile-about-section-title:not(:first-of-type){margin-top:22px}.app-shell-desktop-v2 .mobile-about-features{grid-template-columns:repeat(3,1fr);gap:16px 28px;max-width:none;width:100%}.app-shell-desktop-v2 .mobile-about-features li{flex-direction:row;align-items:flex-start;text-align:left;gap:12px}.app-shell-desktop-v2 .mobile-about-feature-title{font-size:.86rem}.app-shell-desktop-v2 .mobile-about-feature-desc,.app-shell-desktop-v2 .mobile-about-local-desc{font-size:.76rem;line-height:1.4;margin-top:3px}.app-shell-desktop-v2 .mobile-about-local{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 28px;max-width:none;width:100%;text-align:left}.app-shell-desktop-v2 .mobile-about-local-title{font-size:.86rem}.app-shell-desktop-v2 .mobile-about-rule--features{margin:22px 0}.app-shell-desktop-v2 .mobile-about-footer{padding:18px 48px}.app-shell-desktop-v2 .mobile-about-footer-text{font-size:.82rem}.app-shell-desktop-v2{--desktop-accent: #00ff78;--desktop-bg: #000;--desktop-panel: rgba(8, 8, 8, .92);background:var(--desktop-bg);color:#f5f5f5}.app-shell-desktop-v2 .topbar{background:#000000e0;border-bottom:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.app-shell-desktop-v2 .topbar-brand img{height:22px;width:auto}.app-shell-desktop-v2 .welcome-screen{display:none}.desktop-home-v2{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 52px);padding:2rem 2.5rem 3rem;background:#000;overflow:hidden}.desktop-home-v2-header{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2rem}.desktop-home-v2-w3pn{height:28px;width:auto}.desktop-home-v2-about-link{border:none;background:transparent;color:#ffffffb8;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.desktop-home-v2-center{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:720px;text-align:center}.desktop-home-v2-spiral{width:min(320px,38vw)}.desktop-home-v2-wordmark{width:min(420px,52vw);height:auto;margin-top:12px}.desktop-home-v2-paste-hint{margin:.5rem 0 0;font-size:.82rem;color:#ffffff8c;line-height:1.5}.desktop-home-v2-paste-hint kbd{display:inline-block;padding:.1rem .45rem;border-radius:4px;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;font-size:.78rem}.desktop-home-v2-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:2rem}.desktop-home-v2-btn{min-width:220px;padding:.85rem 1.4rem;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.desktop-home-v2-btn--primary{border:none;background:var(--desktop-accent);color:#000}.desktop-home-v2-btn--secondary{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff}.desktop-home-v2-btn--ghost{border:none;background:transparent;color:#ffffff8c;min-width:auto;letter-spacing:.08em}.desktop-home-v2-drop-overlay{position:absolute;top:1rem;right:1rem;bottom:1rem;left:1rem;border:2px dashed var(--desktop-accent);border-radius:16px;display:grid;place-items:center;background:#00ff780f;font-size:1.1rem;letter-spacing:.08em;text-transform:uppercase}.desktop-live-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12000;background:#000}.app-shell-desktop-v2 .mobile-about{max-width:min(920px,92vw);margin:0 auto}.app-shell-desktop-v2 .mobile-about-intro,.app-shell-desktop-v2 .mobile-about-desc{font-size:1rem;line-height:1.65}.app-shell-desktop-v2 .mobile-about-section-title{font-size:.82rem}.app-shell-desktop-v2 .mobile-about-features li,.app-shell-desktop-v2 .mobile-about-local li{font-size:.92rem}.app-shell-desktop-v2 .ts-custom-image-controls{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.45rem}.app-shell-desktop-v2 .ts-custom-image-label{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.app-shell-desktop-v2 .ts-custom-image-select{width:100%}.app-shell-desktop-v2 .ts-custom-image-count{font-size:.62rem;color:var(--text-muted)}@media (max-width: 1024px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}}@media (min-width: 1025px){.mobile-shell,.app-shell-mobile .mobile-floating-controls,.mobile-shell-bottom{display:none!important}}.mobile-shell{flex:none;display:flex;flex-direction:column;overflow:hidden;background:var(--app-bg);--mobile-topbar-h: 44px;--mobile-bottom-toolbar-h: 128px;--mobile-edge-pad: 10px;--mobile-font-xs: .48rem;--mobile-font-sm: .62rem;--mobile-font-md: .68rem;--mobile-font-lg: .75rem}.mobile-editor-chrome{flex:none;z-index:25}.app-shell-mobile>.mobile-shell{flex:1 1 0;min-height:0}.app-shell-mobile{display:flex;flex-direction:column;overflow:hidden;min-height:0;height:100%;color-scheme:dark;position:relative;--mobile-glass-bg: rgba(10, 10, 12, .48);--mobile-glass-border: rgba(255, 255, 255, .09);--mobile-glass-blur: 22px}.app-shell-mobile>.mobile-editor-chrome{position:absolute;top:0;left:0;right:0;z-index:25;flex-shrink:0;pointer-events:none}.app-shell-mobile>.mobile-editor-chrome>*{pointer-events:auto}.app-shell-mobile>.workspace-mobile{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;min-height:0;overflow:hidden}.app-shell-mobile>.mobile-shell-bottom{position:absolute;left:0;right:0;bottom:0;z-index:30;flex-shrink:0;pointer-events:none}.app-shell-mobile>.mobile-shell-bottom>*{pointer-events:auto}.mobile-shell-chrome,.mobile-shell-bottom{flex:none}.app-shell-mobile .workspace-mobile .sidebar,.app-shell-mobile .workspace-mobile .sidebar-resizer,.app-shell-mobile .workspace-mobile .tool-strip,.app-shell-mobile .workspace-mobile .batch-panel{display:none!important;width:0!important}.app-shell-mobile .workspace-mobile .editor-area{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;position:relative}.app-shell-mobile .workspace-mobile .action-toolbar,.app-shell-mobile .workspace-mobile .viewer-corner,.app-shell-mobile .workspace-mobile .snapshot-corner-btn,.app-shell-mobile .workspace-mobile .undo-corner-btn{display:none!important}.app-shell-mobile .workspace-mobile .viewer{flex:1;min-height:0;touch-action:none;background:#080808}.app-shell-mobile .workspace-mobile .editor-area{background:#080808}.viewer-mobile-pinch{touch-action:none}.app-shell-mobile .viewer .mobile-canvas-controls,.app-shell-mobile .editor-area>.mobile-canvas-controls{position:absolute;top:0;right:0;bottom:0;left:0;z-index:45;pointer-events:none}.app-shell-mobile .editor-area>.mobile-floating-controls{display:none}.app-shell-mobile>.mobile-floating-controls{display:none}.mobile-glass-surface{background:var(--mobile-glass-bg);border-color:var(--mobile-glass-border);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur))}@supports not (backdrop-filter: blur(12px)){.mobile-glass-surface{background:#0c0c0eeb}}.mobile-topbar{flex-shrink:0;height:var(--mobile-topbar-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.25rem;padding:0 12px;padding-top:env(safe-area-inset-top,0);border-bottom:1px solid var(--mobile-glass-border);background:var(--mobile-glass-bg);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur));z-index:20}.mobile-topbar-slot-left{gap:.35rem}.mobile-topbar-view-back-btn,.mobile-topbar-view-reset-btn{flex-shrink:0}.mobile-topbar-view-reset-btn{border:1px solid var(--mobile-glass-border);border-radius:8px;background:#ffffff14;color:var(--text-primary);font-size:.58rem;font-weight:600;letter-spacing:.04em;padding:.35rem .55rem;min-height:32px;cursor:pointer}.mobile-topbar-slot{display:flex;align-items:center;min-width:0}.mobile-topbar-slot-left{justify-content:flex-start}.mobile-topbar-slot-left--live{flex-direction:column;align-items:flex-start;justify-content:center;gap:.05rem;margin-left:-8px}.mobile-topbar--live .mobile-topbar-slot-right{padding-right:0;margin-right:-8px}.mobile-topbar-slot-center{justify-content:center}.mobile-topbar-slot-right{justify-content:flex-end;padding-right:0}.mobile-topbar--live{position:relative;z-index:30;background:transparent;border-bottom:none;backdrop-filter:none;-webkit-backdrop-filter:none}.mobile-topbar--live .brand,.mobile-topbar--live .brand h1,.mobile-topbar--live .brand-chevron{color:#fff}.mobile-topbar--live .brand-eye svg{stroke:#fff}.mobile-topbar--live .mobile-topbar-library-leading,.mobile-topbar--live .mobile-topbar-library-leading:hover,.mobile-topbar--live .mobile-topbar-library-leading:active{color:#fff;background:none;opacity:1}.mobile-topbar--live .mobile-topbar-icon-btn{min-width:48px;min-height:48px;color:#fff;opacity:1;background:none}.mobile-topbar--live .mobile-topbar-icon-btn:hover,.mobile-topbar--live .mobile-topbar-icon-btn:active{background:none;opacity:1;color:#fff}.mobile-topbar-close-btn{color:#fff}.mobile-pipeline-ms--live-top{margin-left:10px;font-size:.56rem;line-height:1.1}.app-shell-mobile .mobile-topbar-library-btn,.app-shell-mobile .mobile-topbar-library-btn:hover,.app-shell-mobile .mobile-topbar-library-btn:active{color:#fff;opacity:1}.mobile-topbar .brand{display:flex;align-items:center;gap:.35rem;background:none;border:none;color:var(--text-primary);cursor:pointer;padding:.25rem .35rem;min-height:44px}.mobile-topbar .brand h1{font-size:.65rem;font-weight:600;margin:0;white-space:nowrap}.mobile-topbar-brand{min-width:0;flex:0 1 auto;max-width:100%}.mobile-topbar-spacer{display:none}.mobile-topbar-library-btn{min-width:36px;min-height:36px;flex-shrink:0}.mobile-topbar-library-leading{color:#fff;flex-shrink:0}.mobile-topbar-library-leading:hover{color:#fff;background:#ffffff1f}.mobile-topbar-library-wrap{display:flex;align-items:center;gap:.2rem;flex-shrink:0}.mobile-pipeline-ms{font-size:.58rem;font-weight:600;font-variant-numeric:tabular-nums;color:#e53935;line-height:1;white-space:nowrap}.mobile-pipeline-ms--live{text-shadow:0 1px 3px rgba(0,0,0,.65);pointer-events:none}.mobile-live-library-wrap{pointer-events:auto;align-items:center}.mobile-topbar-actions{display:flex;align-items:center;gap:.2rem;flex-shrink:0}.mobile-topbar-icon-btn{display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;background:none;border:none;border-radius:8px;color:var(--text-muted);cursor:pointer;text-decoration:none;flex-shrink:0;opacity:.85}.app-shell-mobile .topbar .theme-toggle-icon{display:none!important}.mobile-topbar-icon-btn:active{opacity:1;background:var(--surface-hover)}.mobile-topbar-icon-btn:hover{color:var(--text-secondary)}.mobile-topbar-link{font-size:var(--mobile-font-sm);color:var(--text-muted);background:none;border:none;border-radius:6px;padding:.35rem .5rem;min-height:36px;cursor:pointer;text-decoration:none}.mobile-topbar-link:active{background:var(--surface-hover)}.mobile-home{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:0}.mobile-home-center{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.35rem;padding:calc(env(safe-area-inset-top,0) + 1.25rem) var(--mobile-edge-pad) calc(env(safe-area-inset-bottom,0) + 1.25rem)}.mobile-home-brand{display:flex;flex-direction:column;align-items:center;gap:.45rem;border:none;background:none;padding:0;cursor:pointer;text-align:center;max-width:20rem}.mobile-home-brand-eye{transform:scale(1.35)}.mobile-home-brand-title{margin:.35rem 0 0;font-size:1.45rem;font-weight:800;line-height:1.15;letter-spacing:-.02em;color:var(--text-primary)}.mobile-home-brand-tagline{margin:0;font-size:var(--mobile-font-sm);color:var(--text-muted);line-height:1.4}.mobile-home-features-grid{list-style:none;margin:0;padding:0;width:100%;max-width:22rem;display:grid;grid-template-columns:1fr 1fr;gap:.65rem .75rem}.mobile-home-feature-cell{display:flex;align-items:flex-start;gap:.45rem;color:var(--text-muted);min-width:0}.mobile-home-feature-title{font-size:.68rem;font-weight:700;color:var(--text-primary);margin-bottom:.1rem;line-height:1.2}.mobile-home-feature-desc{font-size:.58rem;line-height:1.3;color:var(--text-muted)}.mobile-home-orbs{display:flex;align-items:center;justify-content:center;gap:1.15rem;width:100%;max-width:22rem}.mobile-home-orb{position:relative;flex:1;max-width:9.5rem;aspect-ratio:1;border:none;border-radius:50%;padding:0;cursor:pointer;background:transparent;display:flex;align-items:center;justify-content:center}.mobile-home-orb-surface{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background-color:#2d6a3e;background-image:linear-gradient(90deg,rgba(112,255,136,.55) 50%,transparent 50%),linear-gradient(rgba(112,255,136,.35) 50%,transparent 50%),linear-gradient(135deg,#1b4332,#40916c 45%,#95d5b2);background-size:10px 10px,10px 10px,100% 100%;image-rendering:pixelated;box-shadow:0 0 0 3px #70ff8840,0 8px 28px #00000059;transition:transform .15s ease,box-shadow .15s ease}.mobile-home-orb--media .mobile-home-orb-surface{background-color:#1e3a5f;background-image:linear-gradient(90deg,rgba(116,192,252,.55) 50%,transparent 50%),linear-gradient(rgba(116,192,252,.35) 50%,transparent 50%),linear-gradient(135deg,#1c2541,#3a506b 45%,#74c0fc);box-shadow:0 0 0 3px #74c0fc38,0 8px 28px #00000059}.mobile-home-orb:active .mobile-home-orb-surface{transform:scale(.96)}.mobile-home-orb-label{position:relative;z-index:1;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.55);text-align:center;padding:0 .35rem;line-height:1.2}.mobile-home-demo{margin-top:.15rem;border:none;background:none;color:var(--text-muted);font-size:.62rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;padding:.35rem .65rem;border-radius:6px}.mobile-home-demo:hover:not(:disabled){color:var(--text-primary);background:var(--surface-hover)}.mobile-home-demo:disabled{opacity:.45;cursor:not-allowed}.mobile-home-body,.mobile-home-actions,.mobile-home-cards{display:none}.mobile-card{display:flex;align-items:flex-start;gap:.65rem;width:100%;text-align:left;padding:.85rem .9rem;border-radius:8px;border:1px solid var(--border);background:var(--panel-bg);color:var(--text-primary);cursor:pointer;min-height:44px}.mobile-card:not(.mobile-card-dashed){background:transparent}.mobile-card-dashed{border-style:dashed;flex-direction:column;align-items:center;text-align:center;padding:1.1rem .9rem}.mobile-card-title{font-size:var(--mobile-font-lg);font-weight:600;margin-bottom:.2rem}.mobile-card-desc{font-size:var(--mobile-font-sm);color:var(--text-muted);line-height:1.35}.mobile-card-formats{font-size:var(--mobile-font-xs);color:var(--text-muted);margin-top:.35rem}.mobile-card-hint{font-size:.58rem;color:var(--text-muted);margin-top:.5rem;padding:.25rem .45rem;border:1px solid var(--border);border-radius:4px}.mobile-editor{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.mobile-editor-toolbar{flex-shrink:0;display:flex;flex-direction:column;width:100%;border-bottom:1px solid var(--mobile-glass-border);background:var(--mobile-glass-bg);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur));box-sizing:border-box}.mobile-editor-toolbar-row{display:flex;align-items:center;gap:.45rem;width:100%;padding:.45rem .65rem;box-sizing:border-box}.mobile-tb-summary{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:.3rem;border:none;background:none;padding:.2rem .15rem;color:var(--text-primary);cursor:pointer;text-align:left;font:inherit}.mobile-tb-summary--static{cursor:default}.mobile-tb-summary-name{flex:0 1 auto;min-width:0;max-width:7.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;font-weight:600}.mobile-tb-summary-dims{flex-shrink:0;font-size:.52rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.mobile-tb-summary-chevron{flex-shrink:0;color:var(--text-muted);transition:transform .18s ease}.mobile-tb-summary-chevron.open{transform:rotate(180deg)}.mobile-editor-toolbar-panel{display:flex;flex-direction:column;gap:.55rem;padding:8px .65rem .6rem;border-top:1px solid var(--border);animation:mobile-tb-panel-in .18s ease}.mobile-tb-panel-size-format{display:flex;align-items:center;gap:.45rem;flex-wrap:nowrap}.mobile-tb-panel-size-format .mobile-tb-res{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:.2rem}.mobile-tb-panel-format{flex:0 0 auto;width:4.2rem;max-width:4.2rem;min-width:4.2rem}@keyframes mobile-tb-panel-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mobile-tb-panel-row{display:flex;align-items:center;gap:.5rem}.mobile-tb-panel-res{align-items:center}.mobile-tb-panel-label{flex:0 0 3.2rem;font-size:.52rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.mobile-tb-panel-select{flex:1 1 auto;max-width:none}.mobile-tb-panel-label-inline{flex:0 0 auto;text-transform:none;letter-spacing:0;font-size:.54rem}.mobile-tb-panel-quality{flex-direction:row;align-items:center;gap:.4rem}.mobile-tb-panel-quality .mobile-tb-panel-label{flex:0 0 auto;min-width:4.5rem;white-space:nowrap}.mobile-tb-quality-slider{flex:1 1 auto;min-width:0;width:auto;accent-color:var(--accent, #4caf50)}.mobile-tb-quality-preview{flex:0 0 auto;min-width:3.2rem;text-align:right}.mobile-tb-panel-footer{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;margin-top:.15rem}.mobile-tb-panel-footer .mobile-tb-quality-slider{flex:1 1 auto;min-width:0;max-width:8rem}.mobile-tb-panel-label-compact{flex:0 0 auto;min-width:2.4rem;white-space:nowrap;font-size:.52rem}.mobile-tb-panel-footer .mobile-tb-ok-btn{margin-left:0;flex-shrink:0}.mobile-tb-panel-preview{font-size:.52rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.mobile-tb-ok-btn{min-width:3.5rem;margin-left:auto}.mobile-editor-toolbar .mobile-tb-filename{flex:0 1 auto;max-width:7.5rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.52rem}.mobile-editor-toolbar .mobile-tb-res{flex-shrink:0}.mobile-editor-toolbar .mobile-tb-times{font-size:var(--mobile-font-xs);color:var(--text-muted)}.mobile-editor-toolbar .mobile-tb-select{flex-shrink:0;max-width:4.5rem}.mobile-editor-toolbar .mobile-tb-size{font-size:var(--mobile-font-xs)}.mobile-editor-toolbar .mobile-tb-icon-only{padding:.35rem;min-width:36px;justify-content:center}.mobile-tb-download-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;padding:0;border:none;border-radius:8px;background:#3b5bdb;color:#fff;cursor:pointer;box-shadow:0 2px 8px #3b5bdb4d}.mobile-tb-download-btn:disabled{opacity:.45;cursor:not-allowed}.mobile-fx-vectorize-wrap{margin-top:.65rem;width:100%;flex-shrink:0;display:block}.mobile-fx-vectorize-btn{width:100%;max-width:none;min-height:52px;display:flex;align-items:center;justify-content:center;gap:.45rem;text-align:center;font-weight:600;border:1px solid var(--mobile-glass-border, var(--border));border-radius:10px;background:#ffffff0f}.mobile-custom-image-controls{margin-top:.75rem;display:grid;grid-template-columns:1fr;gap:8px;width:100%}.mobile-custom-image-select-label{font-size:.52rem;color:#ffffff7a;text-transform:uppercase;letter-spacing:.08em}.mobile-custom-image-select{width:100%;min-height:40px;padding:0 .75rem;border-radius:8px;border:1px solid var(--mobile-glass-border, var(--border));background:#ffffff0f;color:#fff;font:inherit;text-transform:uppercase}.mobile-custom-image-upload{width:100%;justify-content:center;min-height:44px}.mobile-custom-image-count{color:#ffffff6b;font-size:.54rem;text-align:center;letter-spacing:.08em}.mobile-editor-toolbar::-webkit-scrollbar{display:none}.mobile-editor-toolbar .tb-filename,.mobile-editor-toolbar .tb-res-input,.mobile-editor-toolbar .tb-select{flex-shrink:0}.mobile-editor-toolbar .tb-size-label{font-size:.62rem;color:var(--text-muted);flex-shrink:0;white-space:nowrap}.mobile-viewport-wrap{flex:1;min-height:0;position:relative;overflow:hidden}.mobile-viewport-wrap .viewer{width:100%;height:100%}.mobile-viewport-wrap .zone-delete-btn{min-width:44px;min-height:44px;font-size:1.1rem}.mobile-canvas-controls{pointer-events:none}.mobile-zoom-indicator{position:absolute;top:8px;left:var(--mobile-edge-pad);padding:.12rem .35rem;border-radius:5px;background:#00000073;color:#fff;font-size:.42rem;font-weight:600;font-family:ui-monospace,monospace;line-height:1.2;pointer-events:none}.mobile-canvas-bottom-bar{position:absolute;left:0;right:0;bottom:calc(var(--mobile-bottom-toolbar-h, 128px) + 8px + env(safe-area-inset-bottom,0));display:grid;grid-template-columns:32px 1fr 32px;align-items:center;gap:.35rem;padding:0 12px;min-height:40px}.mobile-zoom-side-btn{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--mobile-glass-border, var(--border));border-radius:8px;background:var(--mobile-glass-bg, rgba(10, 10, 12, .55));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--text-primary);font-size:1.05rem;font-weight:600;font-family:system-ui,-apple-system,sans-serif;line-height:0;padding:0;box-shadow:0 2px 10px #0000002e;transform:translateY(-.5px)}.mobile-zoom-side-btn:first-child{justify-self:start}.mobile-zoom-side-btn:last-child{justify-self:end}.mobile-export-center{pointer-events:none;display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:nowrap}.mobile-floating-controls{pointer-events:none;display:flex;align-items:flex-end;justify-content:center;min-height:48px;position:relative}.mobile-anonymize-btn{pointer-events:auto;background:var(--accent);color:#0a1a0d;border:none;border-radius:8px;padding:.55rem 1.4rem;font-size:.78rem;font-weight:700;min-height:44px;box-shadow:0 4px 20px #70ff8840;cursor:pointer;flex-shrink:0}.mobile-anonymize-btn:disabled{opacity:.5;cursor:not-allowed}.mobile-download-btn{pointer-events:auto;position:static;flex-shrink:0;background:#3b5bdb;border:none;border-radius:10px;color:#fff;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 16px #3b5bdb59}.mobile-download-btn:disabled{opacity:.5;cursor:not-allowed}.mobile-bottom-toolbar{flex-shrink:0;border-top:1px solid var(--mobile-glass-border);background:var(--mobile-glass-bg);backdrop-filter:blur(var(--mobile-glass-blur));-webkit-backdrop-filter:blur(var(--mobile-glass-blur));padding:.55rem 12px;padding-bottom:calc(.55rem + env(safe-area-inset-bottom,0));z-index:30}.mobile-sliders-row{display:flex;gap:.65rem;margin-bottom:.55rem}.mobile-slider-label{font-size:.58rem;font-weight:600;color:var(--text-muted);letter-spacing:0;flex-shrink:0;min-width:24px}.mobile-slider-val{font-size:.6rem;color:var(--text-muted);font-variant-numeric:tabular-nums;min-width:3ch;flex-shrink:0;min-width:28px;text-align:right}.mobile-slider-group{flex:1;display:flex;align-items:center;gap:.2rem;min-width:0;min-height:44px;padding:6px 0}.mobile-range-with-thumb{position:relative;flex:1;min-width:0;height:28px}.mobile-range-with-thumb input[type=range]{width:100%}.mobile-range-thumb-label{position:absolute;top:50%;left:var(--mobile-range-pct, 0%);transform:translate(-50%,-50%);width:30px;height:22px;display:flex;align-items:center;justify-content:center;text-align:center;color:#03120a;font-size:9px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1;pointer-events:none;z-index:2}.mobile-slider-group-zoom{flex:1.2}.mobile-zoom-step-btn{pointer-events:auto;flex-shrink:0;width:32px;height:32px;min-width:32px;border:1px solid var(--border);border-radius:6px;background:var(--surface-hover);color:var(--text-primary);font-size:1rem;font-weight:700;line-height:1;cursor:pointer;padding:0}.mobile-slider-group input[type=range]{flex:1;min-width:0;width:100%;height:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;accent-color:var(--accent)}.mobile-slider-group input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:transparent;border:1px solid var(--border)}.mobile-slider-group input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:transparent;border:1px solid var(--border)}.mobile-slider-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:22px;border-radius:8px;background:var(--accent);margin-top:-9px;box-shadow:0 1px 4px #00000059}.mobile-slider-group input[type=range]::-moz-range-thumb{width:30px;height:22px;border-radius:8px;background:var(--accent);border:none;box-shadow:0 1px 4px #00000059}.mobile-tool-categories{display:flex;gap:.35rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-top:.15rem}.mobile-tool-btn{flex:1;min-width:48px;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;border:none;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;padding:.35rem .2rem}.mobile-tool-btn:active{background:var(--surface-hover)}.mobile-tool-btn.active,.mobile-tool-btn.selected,.mobile-tool-btn-face.detect-on{color:var(--accent);background:var(--accent-soft)}.mobile-tool-btn-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1}.mobile-tool-btn-face.active{color:var(--accent);background:var(--accent-soft)}.mobile-tool-btn-face.ts-btn-fail{color:var(--danger);background:#dc26261f}.mobile-tool-btn-face.ts-btn-setup{color:#f59e0b;background:#f59e0b1f}.mobile-tool-btn-icon-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0}.mobile-face-count-badge{position:absolute;top:-5px;right:-7px;min-width:15px;height:15px;padding:0 3px;border-radius:999px;background:var(--accent, #70ff88);color:#0a1a0d;font-size:.48rem;font-weight:800;line-height:15px;text-align:center;font-variant-numeric:tabular-nums;box-shadow:0 1px 4px #00000059;pointer-events:none}.mobile-tool-btn-face.active .mobile-face-count-badge{background:#fff;color:#0a1a0d}.mobile-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:100;opacity:0;transition:opacity .18s ease}.mobile-drawer-backdrop--open{opacity:1}.mobile-drawer-backdrop--elevated{z-index:120}.mobile-drawer-backdrop--tool{background:#00000038;backdrop-filter:none;-webkit-backdrop-filter:none}@supports not (backdrop-filter: blur(12px)){.mobile-drawer-backdrop{background:#000000b8}}.mobile-drawer-side{position:fixed;top:0;left:0;bottom:0;width:min(92vw,360px);background:var(--mobile-glass-bg, rgba(12, 12, 14, .72));backdrop-filter:blur(var(--mobile-glass-blur, 22px));-webkit-backdrop-filter:blur(var(--mobile-glass-blur, 22px));border-right:1px solid var(--mobile-glass-border, var(--border));z-index:110;display:flex;flex-direction:column;overflow:hidden;padding-top:env(safe-area-inset-top,0);transform:translate(-100%);transition:transform .18s cubic-bezier(.32,.72,0,1);will-change:transform}.mobile-drawer-bottom{position:fixed;left:0;right:0;bottom:0;max-height:min(72vh,620px);background:var(--mobile-glass-bg, rgba(12, 12, 14, .72));backdrop-filter:blur(var(--mobile-glass-blur, 22px));-webkit-backdrop-filter:blur(var(--mobile-glass-blur, 22px));border-top:1px solid var(--mobile-glass-border, var(--border));border-radius:12px 12px 0 0;z-index:110;display:flex;flex-direction:column;overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0);transform:translateY(100%);transition:transform .18s cubic-bezier(.32,.72,0,1);will-change:transform}.mobile-drawer-panel--open{transform:translate(0)}.mobile-drawer-panel--elevated.mobile-drawer-bottom{z-index:121}.mobile-drawer-handle{width:36px;height:4px;border-radius:2px;background:var(--border);margin:.45rem auto 0;flex-shrink:0}.mobile-drawer-header{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;min-height:44px;padding:0 12px;border-bottom:1px solid var(--border);flex-shrink:0}.mobile-drawer-header-spacer{width:40px}.mobile-drawer-header h2{font-size:.72rem;font-weight:600;margin:0;letter-spacing:.02em;text-align:center}.mobile-drawer-header .mobile-drawer-close{justify-self:end}.mobile-drawer-header--bottom{border-bottom:none;min-height:36px;padding-top:.2rem;padding-bottom:0}.mobile-drawer-bottom .mobile-drawer-body{padding-top:.35rem}.mobile-drawer-hint{font-size:var(--mobile-font-sm);color:var(--text-muted);margin:0;line-height:1.4}.mobile-effect-grid{padding:.15rem 0}.mobile-drawer-close{background:none;border:none;color:#fff;font-size:1.1rem;min-width:40px;min-height:40px;margin-right:-4px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px}.mobile-drawer-close:hover{background:#ffffff1a}.mobile-drawer-body{flex:1;overflow-y:auto;overflow-x:clip;padding:.55rem 12px;min-height:0}.mobile-drawer-body:has(.mobile-distort-viewport){overflow-x:hidden}.mobile-drawer-side .mobile-drawer-body:has(.mobile-gallery-inner){padding:0;display:flex;flex-direction:column;overflow:hidden}.mobile-drawer-sticky-footer{flex-shrink:0;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0));border-top:none;background:transparent;box-shadow:0 -8px 24px #00000059}.mobile-drawer-sticky-footer .btn-primary{width:100%;min-height:44px;background:#3b5bdb;border-color:#3b5bdb}.mobile-gallery-inner{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.mobile-gallery-actions{display:flex;gap:.45rem;padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.mobile-gallery-add{flex:1;min-height:32px;border:none;color:#0a1a0d;background:var(--accent);border-radius:8px;font-size:.68rem;font-weight:700;letter-spacing:.03em;cursor:pointer}.mobile-gallery-batch{flex:1;min-height:32px;padding:0 .55rem;border:1px solid var(--border);background:var(--surface-hover);color:var(--text-primary);border-radius:8px;font-size:.68rem;font-weight:700;letter-spacing:.03em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.3rem}.mobile-gallery-batch.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.mobile-gallery-secondary{min-height:44px;padding:0 .55rem;border:1px solid var(--border);background:transparent;color:var(--text-muted);border-radius:6px;font-size:.65rem;font-weight:600;cursor:pointer}.mobile-gallery-secondary.active{border-color:var(--accent);color:var(--accent)}.mobile-gallery-view-toggle{display:flex;align-items:center;gap:.2rem}.mobile-gallery-view-btn{width:36px;height:36px;min-width:36px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.mobile-gallery-view-btn.active{color:var(--accent)}.mobile-gallery-meta{display:flex;align-items:center;justify-content:space-between;padding:.45rem 12px;font-size:.58rem;font-weight:700;letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase;flex-shrink:0}.mobile-gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.45rem;padding:0 12px 12px;overflow-y:auto;flex:1;min-height:0}.mobile-gallery-item{border:2px solid transparent;border-radius:8px;overflow:hidden;background:var(--panel-bg);cursor:pointer;padding:0;text-align:left}.mobile-gallery-item.selected{border-color:var(--accent)}.mobile-gallery-item-thumb{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:#00000059;overflow:hidden}.mobile-gallery-item img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.mobile-gallery-item-name{font-size:.58rem;color:var(--text-muted);padding:.25rem .35rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-gallery-list{display:flex;flex-direction:column;gap:.25rem;padding:0 12px 12px;overflow-y:auto;flex:1;min-height:0}.mobile-gallery-list-item{display:flex;align-items:center;gap:.45rem;padding:.35rem;border:2px solid transparent;border-radius:8px;background:var(--panel-bg);cursor:pointer;text-align:left;color:var(--text-primary);min-height:44px}.mobile-gallery-list-item.selected{border-color:var(--accent)}.mobile-gallery-list-thumb{flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#00000059;overflow:hidden}.mobile-gallery-list-item img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.mobile-gallery-list-name{flex:1;min-width:0;font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-batch-count--gallery{padding:0 12px .35rem;flex-shrink:0}.mobile-tool-drawer-list{display:flex;flex-direction:column;gap:.25rem}.mobile-tool-drawer-item{display:flex;align-items:center;gap:.45rem;min-height:44px;padding:.45rem .55rem;border:none;border-radius:8px;background:transparent;color:var(--text-primary);cursor:pointer;text-align:left;width:100%;font-size:var(--mobile-font-md)}.mobile-tool-drawer-item:active{background:var(--surface-hover)}.mobile-tool-drawer-item.active{color:var(--accent);background:var(--accent-soft)}.mobile-shell-live{position:relative;flex:1;min-height:0}.mobile-live{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;position:relative}.mobile-live-back-btn{position:absolute;top:calc(.5rem + env(safe-area-inset-top,0));left:var(--mobile-edge-pad);z-index:50;background:#0000008c;border:none;border-radius:8px;color:#fff;font-size:var(--mobile-font-sm);font-weight:600;padding:.4rem .75rem;min-height:36px;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.mobile-live-preview{flex:1;min-height:0;position:relative;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.mobile-live-preview-chrome{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;pointer-events:none}.mobile-live-preview-chrome-br{position:fixed;right:12px;bottom:calc(var(--mobile-bottom-toolbar-h) + 12px + env(safe-area-inset-bottom,0));z-index:46;font-size:.65rem;padding:.2rem .35rem;border-radius:4px;background:#00000061}.mobile-live-canvas{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.mobile-live-face-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:6}.mobile-live-face-box{position:absolute;top:0;left:0;will-change:transform;border:1.5px solid rgba(255,255,255,.85);border-radius:6px;box-shadow:0 0 0 1px #00000059}.mobile-live-face-box--ignored{border-style:dashed;border-color:var(--accent, #00ff78)}.mobile-live-face-toggle{position:absolute;top:-10px;right:-10px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#000000b3;color:#fff;pointer-events:auto;cursor:pointer;padding:0}.mobile-live-face-box--ignored .mobile-live-face-toggle{background:var(--accent, #00ff78);color:#04130b}.mobile-live-bottom-toolbar{flex-shrink:0}.mobile-tool-btn-face.loading{opacity:.75}.mobile-face-loader{display:inline-block;width:18px;height:18px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .75s linear infinite}.mobile-face-loader-lg{width:28px;height:28px;border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.mobile-live-floating-controls{position:fixed;left:0;right:0;bottom:calc(var(--mobile-bottom-toolbar-h) + 12px + env(safe-area-inset-bottom,0));padding:0 12px;z-index:45;display:flex;justify-content:center;align-items:center;pointer-events:none}.mobile-live-capture-row{pointer-events:none;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;max-width:100%}.mobile-live-capture-side{display:flex;align-items:center;gap:.45rem;pointer-events:none}.mobile-live-capture-side-left{justify-content:flex-start}.mobile-live-capture-side-right{justify-content:flex-end}.mobile-live-side-btn{pointer-events:auto;flex-shrink:0;width:48px;height:48px;border:none;border-radius:50%;background:#0000006b;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:color .15s ease,background .15s ease}.mobile-live-side-btn.active{color:var(--mobile-accent, #00ff78)}.mobile-live-side-btn:disabled{opacity:.4;cursor:not-allowed}.mobile-live-aspect-btn{pointer-events:auto;flex-shrink:0;min-width:48px;height:48px;margin-left:8px;padding:0 .45rem;border:none;border-radius:50%;background:#00000073;color:#fff;font-size:.52rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.mobile-live-aspect-btn:disabled{opacity:.45;cursor:not-allowed}.mobile-live-capture-wrap{pointer-events:none;display:flex;align-items:center;justify-content:center;gap:.65rem}.mobile-live-effect-loader{position:absolute;right:10px;bottom:10px;z-index:6;display:flex;align-items:center;justify-content:center;padding:.35rem;border-radius:999px;background:#0000006b;pointer-events:none}.mobile-live-effect-loader .mobile-face-loader{width:18px;height:18px;border-width:2px}.mobile-live-toolbar-wrap{flex-shrink:0;z-index:30}.mobile-live-download-wrap{display:none}.mobile-live-capture-btn{pointer-events:auto;position:relative;width:68px;height:68px;border-radius:50%;border:2px dashed #fff;background:transparent;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 24px #00000059;padding:0;touch-action:none}.mobile-live-capture-btn:disabled{opacity:.45;cursor:not-allowed}.mobile-live-capture-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.mobile-live-capture-ring-bg{stroke:#ffffff59}.mobile-live-capture-ring-progress{stroke:#fff;stroke-linecap:round}.mobile-live-capture-ring-recording{stroke:#fff;stroke-linecap:round;animation:spin 1.2s linear infinite;transform-origin:center}.mobile-live-capture-btn.recording{border-color:#ffffffd9}.mobile-live-capture-timer{pointer-events:none;font-size:1rem;font-weight:700;font-family:ui-monospace,monospace;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.65);min-width:3.5ch}.mobile-live-controls{display:none}.mobile-tool-btn-face{position:relative}.mobile-tool-categories::-webkit-scrollbar{display:none}.mobile-live-error{padding:1rem;text-align:center;color:var(--text-muted);font-size:.78rem}.mobile-live-error button{margin-top:.65rem}.mobile-batch-count{font-size:.65rem;color:var(--text-muted);padding:0 .65rem .35rem}.mobile-batch-count strong{color:var(--accent)}.mobile-toast{position:fixed;top:calc(var(--mobile-topbar-h) + env(safe-area-inset-top,0) + 16px);left:50%;transform:translate(-50%);max-width:min(360px,calc(100% - 48px));width:max-content;z-index:100;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.4rem .7rem;border-radius:999px;background:var(--panel-bg);border:1px solid var(--border);box-shadow:0 8px 28px #00000059;color:var(--text-primary);font-size:var(--mobile-font-xs)}.mobile-toast-text{flex:1;min-width:0}.mobile-toast-action{flex-shrink:0;background:var(--accent-soft);color:var(--accent);border:none;border-radius:6px;padding:.3rem .55rem;font-size:var(--mobile-font-xs);font-weight:700;cursor:pointer}.mobile-gallery-download-all{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;min-height:36px;border:none;border-radius:10px;background:#3b5bdb;color:#fff;font-size:.66rem;letter-spacing:.055em;text-transform:uppercase;font-weight:700;cursor:pointer;box-shadow:0 4px 20px #3b5bdb73}.mobile-gallery-download-all:disabled{opacity:.45;cursor:not-allowed}.mobile-gallery-download-options{display:flex;flex-direction:column;gap:.45rem;padding:.15rem 0 .35rem}.mobile-gallery-download-hint{margin:0 0 .25rem;font-size:var(--mobile-font-sm);color:var(--text-muted);line-height:1.4}.mobile-gallery-download-option{display:flex;align-items:center;gap:.65rem;width:100%;min-height:56px;padding:.55rem .65rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-hover);color:var(--text-primary);cursor:pointer;text-align:left}.mobile-gallery-download-option:disabled{opacity:.45;cursor:not-allowed}.mobile-gallery-download-option span{display:flex;flex-direction:column;gap:.1rem;min-width:0}.mobile-gallery-download-option strong{font-size:.72rem;font-weight:700}.mobile-gallery-download-option small{font-size:.58rem;color:var(--text-muted)}.mobile-topbar-live-btn{display:inline-flex;align-items:center;gap:.2rem;border:none;border-radius:6px;background:var(--accent-soft);color:var(--accent);font-size:.48rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.22rem .4rem;min-height:28px;margin-right:8px;cursor:pointer;flex-shrink:0;line-height:1}.mobile-topbar-live-btn:active{opacity:.9}.mobile-live-overlay-btn{background:#00000073!important;color:#fff!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.mobile-live-top-actions-right{display:flex;align-items:center;gap:.35rem;pointer-events:none}.mobile-live-top-actions-right>*{pointer-events:auto}.mobile-live-preview--cover{align-items:stretch;justify-content:stretch}.mobile-live-preview--contain{align-items:center;justify-content:center}.mobile-live-canvas--cover{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}.mobile-live-canvas--contain{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.mobile-live-settings{display:flex;flex-direction:column;gap:1rem}.mobile-live-settings-section{display:flex;flex-direction:column;gap:.45rem}.mobile-live-settings-heading{margin:0;font-size:var(--mobile-font-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.mobile-live-settings-chips{display:flex;flex-wrap:wrap;gap:.35rem}.mobile-live-settings-chip{border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-secondary);font-size:var(--mobile-font-sm);padding:.35rem .65rem;min-height:36px;cursor:pointer}.mobile-live-settings-chip.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.mobile-live-settings-list{display:flex;flex-direction:column;gap:.35rem}.mobile-live-settings-row{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;text-align:left;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-primary);padding:.45rem .55rem;cursor:pointer}.mobile-live-settings-row.active{border-color:var(--accent);background:var(--accent-soft)}.mobile-live-settings-row-label{font-size:var(--mobile-font-sm);font-weight:600}.mobile-live-settings-row-hint{font-size:var(--mobile-font-xs);color:var(--text-muted)}.mobile-live-settings-toggle{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:44px;font-size:var(--mobile-font-sm)}.mobile-live-settings-toggle span{display:inline-flex;align-items:center;gap:.35rem}.mobile-live-settings-slider{display:flex;flex-direction:column;gap:.35rem}.mobile-live-settings-slider-label{font-size:var(--mobile-font-sm);font-variant-numeric:tabular-nums;color:var(--text-muted)}.mobile-live-settings-hint{margin:0;font-size:var(--mobile-font-xs);color:var(--text-muted)}.mobile-live-top-actions{position:absolute;top:calc(env(safe-area-inset-top,0) + 8px);left:var(--mobile-edge-pad);right:var(--mobile-edge-pad);z-index:20;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.mobile-live-top-actions .mobile-live-back-btn{position:static;top:auto;left:auto}.mobile-live-library-btn,.mobile-live-close-btn{pointer-events:auto}.mobile-live-library-btn{display:none}.mobile-live-close-btn{pointer-events:auto;min-width:44px;min-height:44px;border:none;border-radius:50%;background:#00000073;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.mobile-live-settings-btn{pointer-events:auto;flex-shrink:0;width:48px;height:48px;border:none;border-radius:50%;background:#00000073;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.mobile-live-settings-btn:disabled{opacity:.45;cursor:not-allowed}.mobile-distort-select{width:100%;margin-bottom:.45rem;font-size:var(--mobile-font-sm)}.mobile-distort-viewport{overflow:hidden;width:100%}.mobile-distort-panels{display:flex;flex-direction:row;width:100%;transition:transform .22s ease;will-change:transform}.mobile-distort-panels.show-settings{transform:translate(-100%)}.mobile-distort-panel{flex:0 0 100%;width:100%;min-width:0;box-sizing:border-box}.mobile-distort-panel-settings{align-self:flex-start}.mobile-distort-settings{display:flex;flex-direction:column;gap:.35rem;width:100%}.mobile-distort-settings-placeholder{min-height:1px}.mobile-distort-back{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.55rem;padding:.15rem 0;border:none;background:none;color:var(--text-muted);font-size:var(--mobile-font-sm);cursor:pointer}.mobile-distort-list{display:flex;flex-direction:column;gap:.35rem}.mobile-distort-list-row{display:flex;align-items:center;gap:.35rem;padding:.35rem .45rem;border-radius:8px;background:var(--surface-2, rgba(255, 255, 255, .04))}.mobile-distort-list-row.active{background:#4caf501f}.mobile-distort-toggle{flex:1;display:flex;align-items:center;gap:.45rem;min-height:40px;font-size:var(--mobile-font-sm);cursor:pointer}.mobile-distort-toggle input[type=checkbox]{flex-shrink:0;width:16px;height:16px;accent-color:var(--accent, #4caf50)}.mobile-distort-settings-btn{display:flex;align-items:center;justify-content:center;gap:.15rem;min-width:40px;min-height:40px;padding:0 .35rem;border:none;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer}.mobile-distort-edit-label{font-size:.52rem;font-weight:600;letter-spacing:.02em;text-transform:lowercase;color:var(--text-muted);line-height:1}.mobile-distort-settings-btn:active{background:#ffffff0f}.mobile-distort-list-actions,.mobile-distort-settings-actions{margin-top:.65rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem}.mobile-distort-row .color-slider-label,.mobile-distort-row .color-slider-val{font-size:var(--mobile-font-xs)}@media (max-width: 360px){.mobile-topbar .brand-chevron{display:none}}.app-shell-mobile .mobile-editor-toolbar .tb-res-input{width:48px;font-size:.58rem;padding:.2rem .25rem}.app-shell-mobile .mobile-editor-toolbar .mobile-tb-size,.app-shell-mobile .mobile-editor-toolbar .mobile-tb-select{font-size:.58rem}.app-shell-mobile .mobile-drawer-body .color-sliders{gap:.9rem}.app-shell-mobile .mobile-drawer-body .color-slider-row{min-height:44px;padding:.15rem 0}.app-shell-mobile .mobile-drawer-body .color-slider-label{font-size:var(--mobile-font-sm)}.app-shell-mobile .mobile-drawer-body .color-slider-val{font-size:var(--mobile-font-sm);font-variant-numeric:tabular-nums;text-align:right;min-width:3ch}.app-shell-mobile input[type=range]{accent-color:var(--accent)}.app-shell-mobile input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:transparent;border:1px solid var(--border)}.app-shell-mobile input[type=range]::-moz-range-track{height:4px;border-radius:999px;background:transparent;border:1px solid var(--border)}.app-shell-mobile input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--accent);margin-top:-9px;box-shadow:0 1px 4px #0000004d}.app-shell-mobile input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--accent);border:none;box-shadow:0 1px 4px #0000004d}.app-shell-mobile .mobile-effect-grid .ts-effect-tile-label{font-size:.55rem}.app-shell-mobile .mobile-tool-drawer-item{font-size:.62rem;padding:.45rem .55rem}.app-shell-mobile .mobile-fx-vectorize-btn{width:100%;min-height:56px;font-size:.68rem;padding:.65rem .85rem;justify-content:center}.app-shell-mobile .vectorize-panel{max-height:35vh}.app-shell-mobile .vectorize-panel input,.app-shell-mobile .vectorize-panel select{font-size:.62rem}@media (max-width: 1024px) and (orientation: landscape){.app-shell-mobile,.mobile-shell-live{--mobile-topbar-h: 36px;--mobile-side-toolbar-w: 80px;--mobile-landscape-inset-end: calc( var(--mobile-side-toolbar-w) + env(safe-area-inset-right, 0px) );--mobile-bottom-toolbar-h: 0px}.app-shell-mobile>.mobile-shell-bottom{top:0;bottom:0;left:auto;right:0;width:var(--mobile-side-toolbar-w);padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);padding-right:env(safe-area-inset-right,0)}.app-shell-mobile .mobile-bottom-toolbar{height:100%;min-height:0;border-top:none;border-left:1px solid var(--mobile-glass-border);padding:.35rem .3rem;padding-bottom:calc(.35rem + env(safe-area-inset-bottom,0));display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden}.app-shell-mobile .mobile-sliders-row{flex-direction:column;gap:.2rem;margin-bottom:.35rem;flex-shrink:0}.app-shell-mobile .mobile-slider-group{min-height:34px;padding:2px 0}.app-shell-mobile .mobile-slider-label{min-width:18px;font-size:7px}.app-shell-mobile .mobile-slider-val{min-width:22px;font-size:7px}.app-shell-mobile .mobile-tool-categories{flex:1;min-height:0;flex-direction:column;overflow-x:hidden;overflow-y:auto;gap:.15rem;padding-top:0;-webkit-overflow-scrolling:touch}.app-shell-mobile .mobile-tool-btn{flex:0 0 auto;width:100%;min-width:0;min-height:42px;padding:.2rem .1rem}.app-shell-mobile .mobile-tool-btn-label{font-size:8px}.app-shell-mobile>.mobile-editor-chrome{padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}.app-shell-mobile .mobile-topbar{height:var(--mobile-topbar-h);padding-left:calc(12px + env(safe-area-inset-left,0));padding-right:calc(12px + env(safe-area-inset-right,0))}.app-shell-mobile .mobile-topbar .brand h1{font-size:.7rem}.app-shell-mobile .mobile-topbar .brand-chevron{display:none}.app-shell-mobile .mobile-editor-toolbar-row{padding:.28rem .5rem}.app-shell-mobile .mobile-tb-summary-name{max-width:12rem}.app-shell-mobile .mobile-editor-toolbar--expanded .mobile-editor-toolbar-panel{max-height:min(42vh,220px);overflow-y:auto}.app-shell-mobile .mobile-canvas-bottom-bar{left:calc(8px + env(safe-area-inset-left,0));right:var(--mobile-landscape-inset-end);bottom:calc(8px + env(safe-area-inset-bottom,0))}.app-shell-mobile .mobile-zoom-indicator{top:calc(var(--mobile-topbar-h) + env(safe-area-inset-top,0) + 40px);left:calc(var(--mobile-edge-pad) + env(safe-area-inset-left,0))}.app-shell-mobile .mobile-toast{left:50%;right:auto;transform:translate(-50%)}.app-shell-mobile .mobile-drawer-bottom{max-height:min(78vh,calc(100dvh - var(--mobile-topbar-h) - 8px));padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}.app-shell-mobile .mobile-drawer-side{width:min(48vw,360px);padding-left:env(safe-area-inset-left,0)}.app-shell-mobile .mobile-effect-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}.mobile-shell-live{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.mobile-shell-live .mobile-live{flex:1;min-height:0;position:relative;display:flex;flex-direction:column;overflow:hidden}.mobile-shell-live .mobile-live-preview{flex:1;min-height:0;padding-right:var(--mobile-landscape-inset-end);box-sizing:border-box}.mobile-shell-live .mobile-live-toolbar-wrap{position:absolute;top:0;right:0;bottom:0;width:var(--mobile-side-toolbar-w);z-index:30;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);padding-right:env(safe-area-inset-right,0);pointer-events:none;box-sizing:border-box}.mobile-shell-live .mobile-live-toolbar-wrap>*{pointer-events:auto}.mobile-shell-live .mobile-bottom-toolbar{height:100%;border-top:none;border-left:1px solid var(--mobile-glass-border);padding:.35rem .3rem;padding-bottom:calc(.35rem + env(safe-area-inset-bottom,0));display:flex;flex-direction:column;overflow:hidden}.mobile-shell-live .mobile-sliders-row{flex-direction:column;gap:.2rem;margin-bottom:.35rem}.mobile-shell-live .mobile-tool-categories{flex:1;min-height:0;flex-direction:column;overflow-y:auto;overflow-x:hidden}.mobile-shell-live .mobile-live-floating-controls{left:calc(12px + env(safe-area-inset-left,0));right:var(--mobile-landscape-inset-end);bottom:calc(10px + env(safe-area-inset-bottom,0));padding:0}.mobile-shell-live .mobile-live-preview-chrome-br{right:var(--mobile-landscape-inset-end);bottom:calc(10px + env(safe-area-inset-bottom,0))}.mobile-topbar--live{padding-left:calc(12px + env(safe-area-inset-left,0));padding-right:calc(12px + env(safe-area-inset-right,0))}.mobile-home{padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}.mobile-home-center{flex-direction:row;flex-wrap:wrap;align-content:center;justify-content:center;gap:.75rem 1.25rem;padding:calc(env(safe-area-inset-top,0) + .65rem) var(--mobile-edge-pad) calc(env(safe-area-inset-bottom,0) + .65rem);overflow-y:auto}.mobile-home-brand{flex:1 1 100%;max-width:none}.mobile-home-brand-title{font-size:1.15rem}.mobile-home-features-grid{flex:1 1 55%;max-width:28rem;grid-template-columns:repeat(3,1fr);gap:.45rem .55rem}.mobile-home-orbs{flex:0 1 auto;max-width:16rem;gap:.85rem}.mobile-home-orb-label{font-size:.62rem}.mobile-home-demo{flex:1 1 100%;max-width:14rem}}@media (max-width: 1024px) and (orientation: landscape) and (max-height: 400px){.app-shell-mobile,.mobile-shell-live{--mobile-side-toolbar-w: 58px;--mobile-topbar-h: 32px}.app-shell-mobile .mobile-tool-btn-label,.mobile-shell-live .mobile-tool-btn-label{display:none}.app-shell-mobile .mobile-tool-btn,.mobile-shell-live .mobile-tool-btn{min-height:40px}.app-shell-mobile .mobile-sliders-row,.mobile-shell-live .mobile-sliders-row{gap:.1rem;margin-bottom:.2rem}.app-shell-mobile .mobile-slider-val,.mobile-shell-live .mobile-slider-val,.app-shell-mobile .mobile-editor-toolbar-row,.app-shell-mobile .mobile-tb-summary-dims{display:none}.app-shell-mobile .mobile-topbar .brand h1{font-size:.62rem}.mobile-home-features-grid{grid-template-columns:repeat(2,1fr)}.mobile-home-orbs{max-width:12rem}}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(./archivo-vietnamese-wdth-normal-rJmnGBSt.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(./archivo-latin-ext-wdth-normal-7khWdh9v.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(./archivo-latin-wdth-normal-DY7AcnAa.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Archivo Variable,Archivo,Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.45;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=light]{--app-bg: #f2f3f5;--panel-bg: #ffffff;--surface-muted: #f7f8fa;--surface-active: #eef2ff;--surface-hover: #f0f1f4;--canvas-bg: #e8e9ec;--border: #e0e2e8;--border-strong: #c8ccd6;--button-bg: #ffffff;--button-border: #dde0e8;--accent: #70FF88;--accent-hover: #50e868;--accent-soft: rgba(112, 255, 136, .13);--danger: #e03131;--danger-soft: rgba(224, 49, 49, .09);--warn: #f08c00;--warn-soft: rgba(240, 140, 0, .1);--success: #2f9e44;--text-primary: #141416;--text-secondary: #3d4047;--text-muted: #82878f;--overlay-bg: rgba(255,255,255,.85);--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 16px rgba(0,0,0,.1);--drag-over-border: #70FF88;--drag-over-bg: rgba(112,255,136,.06)}:root[data-theme=dark]{--app-bg: #000000;--panel-bg: #0c0c0c;--surface-muted: #141414;--surface-active: #1a1a2e;--surface-hover: #181818;--canvas-bg: #080808;--border: #222222;--border-strong: #333333;--button-bg: #111111;--button-border: #2a2a2a;--accent: #70FF88;--accent-hover: #50e868;--accent-soft: rgba(112, 255, 136, .1);--danger: #ff5252;--danger-soft: rgba(255, 82, 82, .1);--warn: #ffa94d;--warn-soft: rgba(255, 169, 77, .12);--success: #51cf66;--text-primary: #f0f0f0;--text-secondary: #a0a0a0;--text-muted: #555555;--overlay-bg: rgba(12,12,12,.9);--shadow-sm: 0 1px 3px rgba(0,0,0,.5);--shadow-md: 0 4px 20px rgba(0,0,0,.6);--drag-over-border: #70FF88;--drag-over-bg: rgba(112,255,136,.07)}*,*:before,*:after{box-sizing:border-box}html{height:100%}body{margin:0;height:100%;min-width:320px;background:var(--app-bg);color:var(--text-primary);overflow:hidden}#root{height:100%;display:flex;flex-direction:column;overflow:hidden}
