:root{--font-display: "Chakra Petch", "Noto Sans TC", "Noto Sans JP", "Microsoft JhengHei", sans-serif;--font-body: "IBM Plex Sans", "Noto Sans TC", "Noto Sans JP", "Microsoft JhengHei", "Yu Gothic", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--radius: 6px;--radius-lg: 10px;--wobble-sm: 6px;--wobble-lg: 10px}:root[data-theme=light]{--bg: #f2f5fb;--bg-raised: #fcfdff;--bg-sunken: #e5eaf4;--panel: rgba(28, 46, 100, .04);--line: rgba(28, 46, 100, .13);--line-strong: rgba(28, 46, 100, .28);--ink: #111729;--ink-dim: #4d5872;--ink-faint: #8a94ae;--mark-bg: #111729;--accent: #4f46e5;--accent-soft: rgba(79, 70, 229, .1);--accent-ink: #ffffff;--paint-red: #db2777;--paint-blue: #0284c7;--paint-yellow: #d97706;--paint-green: #15803d;--paint-violet: #7c3aed;--weave: rgba(28, 46, 100, .05);--danger: #dc2626;--warn: #b45309;--ok: #15803d;--shadow: 0 1px 2px rgba(17, 23, 41, .06), 0 10px 30px rgba(17, 23, 41, .1);--glow: 0 0 0 1px rgba(79, 70, 229, .25), 0 0 18px rgba(79, 70, 229, .22);color-scheme:light}:root[data-theme=dark]{--bg: #0a0e1c;--bg-raised: #161d33;--bg-sunken: #04060f;--panel: rgba(130, 165, 255, .06);--line: rgba(145, 175, 255, .17);--line-strong: rgba(165, 190, 255, .34);--ink: #e8edff;--ink-dim: #a6b2d8;--ink-faint: #67729b;--mark-bg: #e8edff;--accent: #38dfff;--accent-soft: rgba(56, 223, 255, .13);--accent-ink: #041220;--paint-red: #ff5c8a;--paint-blue: #4db8ff;--paint-yellow: #ffc23e;--paint-green: #3ce08c;--paint-violet: #a78bfa;--weave: rgba(130, 165, 255, .06);--danger: #ff6b6b;--warn: #ffb454;--ok: #3ce08c;--shadow: 0 1px 2px rgba(0, 0, 0, .5), 0 14px 36px rgba(0, 0, 0, .45);--glow: 0 0 0 1px rgba(56, 223, 255, .3), 0 0 20px rgba(56, 223, 255, .22);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden;overflow-x:clip;overscroll-behavior-x:none}body{background-color:var(--bg);background-image:linear-gradient(var(--weave) 1px,transparent 1px),linear-gradient(90deg,var(--weave) 1px,transparent 1px);background-size:28px 28px;color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background .3s ease,color .3s ease}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:999;opacity:.035;background-image:repeating-linear-gradient(0deg,currentColor 0 1px,transparent 1px 3px);color:var(--ink)}:root[data-theme=dark] body:after{opacity:.05}select,select option,select optgroup{background-color:var(--bg-raised);color:var(--ink)}.app{max-width:1060px;margin:0 auto;padding:0 24px;position:relative;z-index:1}.topbar{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px}.brand-mark svg{width:30px;height:30px;display:block}.brand-name{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:22px;letter-spacing:.01em}.topbar-actions{display:flex;align-items:center;gap:10px}.lang-switch{display:flex;border:1px solid var(--line-strong);border-radius:var(--radius);padding:2px;background:var(--bg-raised)}.lang-switch button{border:0;background:transparent;color:var(--ink-dim);font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.02em;padding:5px 12px;border-radius:6px;cursor:pointer;transition:all .18s ease}.lang-switch button.active{background:var(--ink);color:var(--bg)}.theme-toggle{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-raised);color:var(--ink-dim);cursor:pointer;transition:all .18s ease}.theme-toggle:hover:not(.active){color:var(--ink);border-color:var(--ink)}.theme-toggle.active:hover{color:var(--bg)}.theme-toggle.active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.hero{position:relative;text-align:center;padding:54px 0 44px;overflow:hidden;transition:padding .5s ease}.hero-fold{display:grid;grid-template-rows:1fr;transition:grid-template-rows .5s ease}.hero-fold-inner{min-height:0;overflow:hidden;opacity:1;transform:none;transition:opacity .35s ease,transform .5s ease}.hero-compact{padding:24px 0 22px}.hero-compact .hero-fold{grid-template-rows:0fr}.hero-compact .hero-fold-inner{opacity:0;transform:translateY(-8px)}.hero-compact .feat-row{margin-top:0}.hero:before{content:"";position:absolute;left:-24px;right:-24px;bottom:-10px;height:62%;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--accent) 34%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--accent) 34%,transparent) 1px,transparent 1px);background-size:46px 46px;transform:perspective(380px) rotateX(58deg);transform-origin:50% 100%;animation:gridFlow 3s linear infinite;mask-image:linear-gradient(to top,#000 30%,transparent 92%);-webkit-mask-image:linear-gradient(to top,#000 30%,transparent 92%);opacity:.5}@keyframes gridFlow{to{background-position:0 46px,0 0}}.hero:after{content:"";position:absolute;top:-30px;right:-24px;bottom:-30px;left:-24px;pointer-events:none;background-image:radial-gradient(closest-side,var(--paint-blue),transparent 70%),radial-gradient(closest-side,var(--paint-red),transparent 70%),radial-gradient(closest-side,var(--paint-violet),transparent 72%);background-repeat:no-repeat;background-size:340px 240px,280px 220px,240px 200px;background-position:4% 14%,96% 22%,55% -12%;filter:blur(34px);opacity:.16;animation:orbDrift 14s ease-in-out infinite alternate}:root[data-theme=dark] .hero:after{opacity:.26}@keyframes orbDrift{0%{background-position:4% 14%,96% 22%,55% -12%}to{background-position:12% 30%,86% 44%,42% 4%}}.hero>:not(.hero-backdrop){position:relative;z-index:1}.hero-tagline{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin:0 0 12px;animation:rise .6s ease backwards}.hero-tagline:before{content:"> ";opacity:.6}.hero-tagline:after{content:"▌";margin-left:2px;animation:cursorBlink 1.1s steps(1) infinite}@keyframes cursorBlink{0%,49%{opacity:1}50%,to{opacity:0}}.hero-title{font-family:var(--font-display);font-weight:600;font-size:clamp(36px,5.6vw,54px);line-height:1.08;letter-spacing:.01em;margin:0 0 8px;animation:rise .6s .06s ease backwards}.hero-accent{position:relative;display:inline-block;color:var(--accent);text-shadow:0 0 18px color-mix(in srgb,var(--accent) 55%,transparent)}.hero-accent:before,.hero-accent:after{content:attr(data-text);position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0}.hero-accent:before{color:var(--paint-blue);animation:glitchA 4s steps(1) infinite}.hero-accent:after{color:var(--paint-red);animation:glitchB 4s steps(1) infinite}@keyframes glitchA{0%,88%,to{opacity:0;transform:none;clip-path:none}89%{opacity:.85;transform:translate(-3px,1px);clip-path:inset(8% 0 55% 0)}92%{opacity:.85;transform:translate(3px,-1px);clip-path:inset(55% 0 12% 0)}95%{opacity:0;transform:none}}@keyframes glitchB{0%,88%,to{opacity:0;transform:none;clip-path:none}90%{opacity:.85;transform:translate(3px,-1px);clip-path:inset(48% 0 22% 0)}93%{opacity:.85;transform:translate(-3px,2px);clip-path:inset(12% 0 62% 0)}95%{opacity:0;transform:none}}.hero-stage{display:flex;align-items:center;justify-content:center;margin:36px auto 0;max-width:540px;animation:rise .6s .14s ease backwards}.format-card{width:128px;height:122px;border-radius:var(--radius-lg);border:1px solid var(--line-strong);background:var(--bg-raised);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:border-color .25s ease,transform .25s ease}.format-card:hover{border-color:var(--ink);transform:translateY(-2px)}.format-card.to{border-color:var(--accent)}.format-icon{width:32px;height:32px;color:var(--ink-faint)}.format-card.to .format-icon{color:var(--accent)}.stage-link{display:flex;align-items:center;flex:1;max-width:180px;position:relative}.stage-line{flex:1;height:1px;background-image:repeating-linear-gradient(90deg,var(--line-strong) 0 6px,transparent 6px 13px);animation:convey 1.4s linear infinite}@keyframes convey{to{background-position:13px 0}}.stage-orb{width:42px;height:42px;border-radius:50%;border:1px solid var(--line-strong);background:var(--bg-raised);display:grid;place-items:center;margin:0 6px;box-shadow:var(--shadow)}.orb-icon{width:18px;height:18px;color:var(--ink);animation:spin 12s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stage-to{position:absolute;left:50%;bottom:-22px;transform:translate(-50%);font-family:var(--font-mono);font-size:10px;letter-spacing:.32em;color:var(--ink-faint)}.fsel{position:relative;display:inline-flex;align-items:center;animation:fadeSwap .5s ease both}@keyframes fadeSwap{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.fsel:after{content:"";position:absolute;right:5px;top:50%;width:6px;height:6px;border-right:1.5px solid var(--ink-faint);border-bottom:1.5px solid var(--ink-faint);transform:translateY(-70%) rotate(45deg);pointer-events:none}.fsel select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:none;font-family:var(--font-mono);font-weight:600;font-size:16px;letter-spacing:.05em;color:var(--ink);padding:2px 16px 2px 4px;cursor:pointer;width:96px;text-align:center;text-align-last:center}.fsel select:focus-visible{outline:1.5px solid var(--ink);outline-offset:3px;border-radius:4px}.fsel.accent select{color:var(--accent)}.fsel.accent:after{border-color:var(--accent)}.hero-cta{margin-top:30px}.btn{position:relative;overflow:hidden;font-family:var(--font-body);font-weight:600;font-size:13.5px;letter-spacing:.01em;border-radius:var(--radius);padding:9px 20px;cursor:pointer;border:1px solid transparent;display:inline-flex;align-items:center;gap:8px;text-decoration:none;transition:all .18s ease;white-space:nowrap}.btn:after{content:"";position:absolute;top:0;bottom:0;left:-75%;width:50%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.35),transparent);transform:skew(-20deg);transition:left .45s ease;pointer-events:none}.btn:hover:not(:disabled):after{left:125%}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-accent{background:linear-gradient(135deg,var(--accent),var(--paint-violet));border-color:transparent;color:var(--accent-ink)}.btn-accent:hover:not(:disabled){background:linear-gradient(135deg,var(--accent),var(--paint-violet));border-color:transparent;color:var(--accent-ink);transform:translateY(-1px);box-shadow:var(--glow)}.btn-sub{font-family:var(--font-mono);font-size:11px;font-weight:400;opacity:.75}.btn-ghost{background:transparent;border-color:var(--line-strong);color:var(--ink-dim)}.btn-ghost:hover:not(:disabled){border-color:var(--ink);color:var(--ink)}.btn-lg{font-size:14.5px;padding:12px 32px}.workbench{padding:26px 0 54px}.dropzone{position:relative;border:1px solid var(--line-strong);border-radius:4px;background:var(--bg-raised);--dz-b: 2px;--dz-l: 22px;background-image:linear-gradient(var(--accent),var(--accent)),linear-gradient(var(--accent),var(--accent)),linear-gradient(var(--accent),var(--accent)),linear-gradient(var(--accent),var(--accent)),linear-gradient(var(--accent),var(--accent)),linear-gradient(var(--accent),var(--accent)),linear-gradient(var(--accent),var(--accent)),linear-gradient(var(--accent),var(--accent));background-repeat:no-repeat;background-size:var(--dz-l) var(--dz-b),var(--dz-b) var(--dz-l),var(--dz-l) var(--dz-b),var(--dz-b) var(--dz-l),var(--dz-l) var(--dz-b),var(--dz-b) var(--dz-l),var(--dz-l) var(--dz-b),var(--dz-b) var(--dz-l);background-position:0 0,0 0,100% 0,100% 0,0 100%,0 100%,100% 100%,100% 100%;padding:42px 24px;text-align:center;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.dropzone:hover,.dropzone.over{border-color:var(--accent);background-color:var(--bg-sunken);box-shadow:var(--glow)}.dz-glyph{width:48px;height:48px;margin:0 auto 14px;border:1.5px solid var(--line-strong);border-radius:50%;display:grid;place-items:center;color:var(--accent);background:var(--bg);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.dz-glyph svg{width:22px;height:22px}.dropzone:hover .dz-glyph,.dropzone.over .dz-glyph{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 0 14px color-mix(in srgb,var(--accent) 45%,transparent)}.dz-title{font-family:var(--font-display);font-weight:600;font-size:20px;letter-spacing:.02em;margin:0 0 3px}.dropzone.dz-compact{display:flex;align-items:center;gap:12px;padding:11px 18px;text-align:left}.dz-compact .dz-glyph{width:32px;height:32px;margin:0;flex-shrink:0}.dz-compact .dz-glyph svg{width:15px;height:15px}.dz-compact .dz-title{font-size:15px;margin:0}.dz-compact .dz-kbd{margin:0 0 0 auto}.dz-hint{font-family:var(--font-mono);color:var(--ink-faint);font-size:12px;margin:0}.banner{margin-top:16px;padding:12px 16px;border-radius:var(--radius);font-size:13.5px;display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-left-width:4px;background:var(--bg-raised);color:var(--ink-dim);animation:rise .35s ease backwards}.banner.danger{border-left-color:var(--danger);color:var(--danger)}.banner.warn{border-left-color:var(--warn);color:var(--warn)}.banner.info{border-left-color:var(--accent);color:var(--ink-dim)}.banner.note{border-left-color:var(--line-strong)}.spinner{width:14px;height:14px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--accent);animation:spinFast .8s linear infinite;flex-shrink:0}@keyframes spinFast{to{transform:rotate(360deg)}}.batch-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:22px 0 12px;padding:13px 16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);animation:rise .35s ease backwards}.bb-info{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.bb-count{font-family:var(--font-mono);font-size:12.5px;color:var(--ink-dim)}.bb-progress-wrap{display:flex;align-items:center;gap:10px}.bb-progress{display:inline-block;width:120px;height:6px;border-radius:999px;background:var(--bg-sunken);overflow:hidden}.bb-bar{display:block;position:relative;overflow:hidden;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--paint-blue),var(--accent),var(--paint-red));box-shadow:0 0 10px color-mix(in srgb,var(--accent) 55%,transparent);transition:width .4s ease}.bb-bar:after,.fc-bar:after{content:"";position:absolute;top:0;bottom:0;width:46px;left:-46px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:barSheen 1.5s linear infinite}@keyframes barSheen{to{transform:translate(100vw)}}.bb-done{font-family:var(--font-mono);font-size:12px;color:var(--ink-faint)}.bb-actions{display:flex;gap:10px;flex-wrap:wrap}.file-list{display:flex;flex-direction:column;gap:10px}.file-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);padding:16px 18px;animation:rise .35s ease backwards;transition:border-color .22s ease}.file-card.status-converting{border-color:var(--accent)}.file-card.status-done{border-color:var(--ok)}.file-card.status-error{border-color:var(--danger)}.fc-main{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.fc-icon{width:42px;height:42px;flex-shrink:0;border:1px solid var(--line-strong);border-radius:var(--radius);display:grid;place-items:center;background:var(--bg);color:var(--ink)}.fc-icon svg{width:20px;height:20px}.fc-thumb{width:64px;height:46px;flex-shrink:0;border:1px solid var(--line-strong);border-radius:var(--radius);overflow:hidden;background:var(--bg-sunken)}.fc-thumb img{width:100%;height:100%;object-fit:cover;display:block}.fc-meta{flex:1;min-width:180px;overflow:hidden}.fc-name{margin:0;font-weight:600;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fc-info{margin:3px 0 0;display:flex;gap:12px;align-items:center}.fc-kind{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);border:1px solid var(--line-strong);padding:1px 7px;border-radius:4px}.fc-size{font-family:var(--font-mono);font-size:12px;color:var(--ink-faint)}.fc-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fc-target{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-faint)}.fc-chips{display:none}.fc-target select{font-family:var(--font-mono);font-weight:600;font-size:12.5px;letter-spacing:.04em;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--radius);padding:7px 10px;cursor:pointer;transition:border-color .18s ease}.fc-target select:hover{border-color:var(--ink)}.fc-remove{padding:9px 11px}.fc-detail-btn.active{border-color:var(--ink);color:var(--ink);background:var(--panel)}.fc-details{margin:13px 0 0;padding:13px 15px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px 22px;animation:rise .28s ease backwards}.fc-detail-row{display:flex;gap:10px;align-items:baseline;font-size:13px}.fc-detail-row dt{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);min-width:66px;flex-shrink:0}.fc-detail-row dd{margin:0;color:var(--ink);overflow-wrap:anywhere}.fc-detail-row a{color:var(--accent);text-decoration:none}.fc-detail-row a:hover{text-decoration:underline}.fc-quality{display:flex;align-items:center;gap:12px;margin-top:13px;font-size:12.5px;color:var(--ink-faint)}.fc-quality input[type=range]{flex:1;max-width:260px;accent-color:var(--accent)}.fc-quality-val{font-family:var(--font-mono);font-size:12px;min-width:38px}.fc-progress{margin-top:13px;height:6px;border-radius:999px;background:var(--bg-sunken);overflow:hidden}.fc-bar{position:relative;overflow:hidden;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--paint-blue),var(--accent),var(--paint-red));box-shadow:0 0 10px color-mix(in srgb,var(--accent) 55%,transparent);transition:width .3s ease}.fc-progress-row{display:flex;align-items:center;gap:12px;margin-top:13px}.fc-progress-row .fc-progress{flex:1;margin-top:0}.fc-pct{font-family:var(--font-mono);font-size:12px;color:var(--ink-dim);min-width:40px;text-align:right}.engine-banner{align-items:flex-start}.engine-dl{flex:1;display:flex;flex-direction:column;gap:8px}.engine-progress{margin-top:0}.fc-error{margin:10px 0 0;font-size:13px;color:var(--danger)}.fc-warn{margin:10px 0 0;font-size:12.5px;color:var(--warn);display:flex;gap:7px}.fc-warn:before{content:"△"}.fc-warn.danger{color:var(--danger)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0b0866;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;animation:fadeIn .22s ease both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(380px,92vw);background:var(--bg-raised);border-left:1px solid var(--line);box-shadow:var(--shadow);padding:22px 24px;overflow-y:auto;z-index:101;animation:slideIn .3s cubic-bezier(.2,.8,.3,1) backwards}@keyframes slideIn{0%{transform:translate(36px);opacity:0}to{transform:none;opacity:1}}.drawer-bottom-close{width:100%;margin-top:18px}.drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--line)}.drawer-head h2{font-family:var(--font-display);font-weight:400;font-size:22px;margin:0}.drawer .settings-panel{border:none;background:none;padding:0;margin:0;animation:none}.drawer .sp-grid{grid-template-columns:1fr;gap:22px}.settings-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);padding:20px 22px;margin-bottom:16px}.sp-section+.sp-section{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.sp-sec-title{font-family:var(--font-display);font-weight:400;font-size:17px;margin:0 0 12px}.sp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px 26px}.sp-check,.sp-field.sp-check{flex-direction:row;align-items:center;gap:10px;cursor:pointer}.sp-check input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.sp-field{display:flex;flex-direction:column;gap:7px;font-size:13px}.sp-label{font-family:var(--font-mono);font-weight:500;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);display:flex;justify-content:space-between;align-items:baseline}.sp-val{font-family:var(--font-mono);font-size:12px;color:var(--accent);text-transform:none;letter-spacing:0}.sp-hint{font-size:12px;line-height:1.55;color:var(--ink-faint)}.sp-field select{font-family:var(--font-mono);font-weight:600;font-size:13px;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--radius);padding:8px 10px;cursor:pointer;transition:border-color .18s ease}.sp-field select:hover{border-color:var(--ink)}.sp-field input[type=range]{accent-color:var(--accent)}.matrix{padding:34px 0 56px;border-top:1px solid var(--line)}.matrix-title{position:relative;font-family:var(--font-display);font-weight:400;font-size:26px;text-align:center;margin:0 0 24px}.matrix-title:after{content:"";display:block;width:120px;height:2px;margin:12px auto 0;background:linear-gradient(90deg,transparent,var(--accent),transparent);box-shadow:0 0 8px color-mix(in srgb,var(--accent) 60%,transparent)}.matrix-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.mx-card{border:1px solid var(--line);border-top:4px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--bg-raised);padding:20px 22px;transition:border-color .22s ease,transform .22s ease}.mx-card:hover{transform:translateY(-2px)}.mx-image{border-top-color:var(--paint-green)}.mx-audio{border-top-color:var(--paint-blue)}.mx-video{border-top-color:var(--paint-red)}.mx-image:hover{border-color:var(--paint-green);box-shadow:0 0 18px color-mix(in srgb,var(--paint-green) 22%,transparent)}.mx-audio:hover{border-color:var(--paint-blue);box-shadow:0 0 18px color-mix(in srgb,var(--paint-blue) 22%,transparent)}.mx-video:hover{border-color:var(--paint-red);box-shadow:0 0 18px color-mix(in srgb,var(--paint-red) 22%,transparent)}.mx-image .mx-icon{color:var(--paint-green);border-color:var(--paint-green)}.mx-audio .mx-icon{color:var(--paint-blue);border-color:var(--paint-blue)}.mx-video .mx-icon{color:var(--paint-red);border-color:var(--paint-red)}.mx-pdf{border-top-color:var(--paint-violet)}.mx-pdf:hover{border-color:var(--paint-violet);box-shadow:0 0 18px color-mix(in srgb,var(--paint-violet) 22%,transparent)}.mx-pdf .mx-icon{color:var(--paint-violet);border-color:var(--paint-violet)}.file-card.kind-pdf .fc-icon{color:var(--paint-violet)}.mx-doc{border-top-color:var(--accent)}.mx-doc:hover{border-color:var(--accent);box-shadow:var(--glow)}.mx-doc .mx-icon{color:var(--accent);border-color:var(--accent)}.file-card.kind-doc .fc-icon{color:var(--accent)}.mx-head{display:flex;align-items:center;gap:11px;margin-bottom:15px;padding-bottom:12px;border-bottom:1px solid var(--line)}.mx-icon{width:36px;height:36px;border:1px solid var(--line-strong);border-radius:var(--radius);display:grid;place-items:center;background:var(--bg);color:var(--ink)}.mx-icon svg{width:18px;height:18px}.mx-kind{font-family:var(--font-display);font-weight:400;font-size:19px}.mx-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 7px}.mx-chips{display:flex;flex-wrap:wrap;gap:5px}.chip{font-family:var(--font-mono);font-weight:500;font-size:11px;letter-spacing:.04em;padding:2px 8px;border-radius:4px;border:1px solid var(--line-strong);color:var(--ink-dim);background:transparent}.chip.out{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.mx-arrow{color:var(--ink-faint);font-size:13px;margin:10px 0}.feat-row{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:22px}.feat{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;color:var(--ink-dim);border:1px solid var(--line);border-radius:var(--wobble-sm);padding:4px 12px;background:var(--bg-raised)}.feat svg{color:var(--accent)}.feat:nth-child(1){border-color:var(--paint-blue);background:color-mix(in srgb,var(--paint-blue) 7%,var(--bg-raised))}.feat:nth-child(1) svg{color:var(--paint-blue)}.feat:nth-child(2){border-color:var(--paint-red);background:color-mix(in srgb,var(--paint-red) 7%,var(--bg-raised))}.feat:nth-child(2) svg{color:var(--paint-red)}.feat:nth-child(3){border-color:var(--paint-green);background:color-mix(in srgb,var(--paint-green) 7%,var(--bg-raised))}.feat:nth-child(3) svg{color:var(--paint-green)}.feat:nth-child(4){border-color:var(--paint-violet);background:color-mix(in srgb,var(--paint-violet) 7%,var(--bg-raised))}.feat:nth-child(4) svg{color:var(--paint-violet)}.feat:nth-child(5){border-color:var(--paint-yellow);background:color-mix(in srgb,var(--paint-yellow) 7%,var(--bg-raised))}.feat:nth-child(5) svg{color:var(--paint-yellow)}.feat:nth-child(6){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--bg-raised))}.feat:nth-child(6) svg{color:var(--accent)}.mx-edit{font-family:var(--font-mono);font-size:11px;color:var(--ink-faint);margin:13px 0 0;padding-top:11px;border-top:1px dashed var(--line)}.fc-edited{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent);background:var(--accent-soft);padding:1px 7px;border-radius:4px}.btn-sm{padding:6px 12px;font-size:12.5px}.editor-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0b0880;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:110;display:grid;place-items:center;padding:20px;animation:fadeIn .2s ease both}.editor{width:min(760px,100%);max-height:calc(100vh - 40px);overflow-y:auto;background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:18px 22px;animation:rise .28s cubic-bezier(.2,.8,.3,1) backwards}.editor-wide{width:min(980px,100%)}.ed-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.ed-title{font-family:var(--font-mono);font-size:13px;color:var(--ink-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ed-preview{display:grid;place-items:center;background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--radius);padding:12px;margin-bottom:16px}.media-preview.mp-video{height:42vh;grid-template-rows:100%;overflow:hidden}.media-preview.mp-audio{height:84px}.ed-preview video{max-width:100%;height:100%;object-fit:contain;border-radius:4px}.ed-preview audio{width:100%}.track-sec{border-top:1px dashed var(--line);padding-top:13px}.track-title{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 10px}.replace-row{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.replace-row .btn{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.gif-preview canvas{max-width:100%;max-height:var(--gif-ph, 40vh);image-rendering:auto;border-radius:4px}.ed-controls{display:flex;flex-direction:column;gap:16px}.ed-row{display:flex;flex-direction:column;gap:8px}.ed-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px 22px;align-items:end}.ed-mark-btns{display:flex;gap:8px;flex-wrap:wrap}.ed-seg{display:flex;border:1px solid var(--line-strong);border-radius:var(--radius);overflow:hidden;width:fit-content}.ed-seg button{border:0;background:transparent;color:var(--ink-dim);font-family:var(--font-mono);font-size:12px;padding:7px 12px;cursor:pointer;transition:all .15s ease}.ed-seg button+button{border-left:1px solid var(--line)}.ed-seg button.active{background:var(--ink);color:var(--bg)}.ed-input{font-family:var(--font-body);font-size:14px;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--radius);padding:8px 11px}.ed-input:focus-visible{outline:1.5px solid var(--ink);outline-offset:1px}.ed-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.ed-foot-main{display:flex;gap:10px;margin-left:auto}.ed-hint{font-family:var(--font-mono);font-size:11px;color:var(--ink-faint)}.dual{width:100%}.dual-track{position:relative;height:26px;cursor:pointer;touch-action:none}.dual-track:before{content:"";position:absolute;top:50%;left:0;right:0;height:4px;transform:translateY(-50%);border-radius:999px;background:var(--bg-sunken);border:1px solid var(--line)}.dual-fill{position:absolute;top:50%;height:4px;transform:translateY(-50%);border-radius:999px;background:linear-gradient(90deg,var(--paint-blue),var(--accent),var(--paint-red));box-shadow:0 0 8px color-mix(in srgb,var(--accent) 45%,transparent)}.dual-handle{position:absolute;top:50%;width:16px;height:16px;transform:translate(-50%,-50%);border-radius:50%;background:var(--bg-raised);border:2px solid var(--ink);cursor:grab;transition:border-color .15s ease}.dual-handle:hover{border-color:var(--accent)}.dual-labels{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:11px;color:var(--ink-faint);margin-top:2px}.ed-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;margin-bottom:8px;padding-bottom:2px}.ed-toolbar>*{flex-shrink:0}.ed-toolbar{touch-action:pan-x pan-y}.ed-options{touch-action:pan-x}.ed-options{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;min-height:50px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);padding:6px 12px;margin-bottom:12px}.ed-options>*{flex-shrink:0}.opt-tool{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);min-width:54px;border-right:1px solid var(--line);padding-right:10px;margin-right:2px}.opt-spacer{flex:1 1 auto;min-width:8px}kbd{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-dim);background:var(--bg);border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:4px;padding:0 5px;line-height:1.7}.kbd-hints{display:flex;gap:14px;flex-wrap:wrap;align-items:center;font-family:var(--font-mono);font-size:11px;color:var(--ink-faint)}.kbd-hints>span{display:inline-flex;gap:5px;align-items:center;white-space:nowrap}.dz-kbd{margin:12px 0 0;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-faint);display:flex;gap:6px;justify-content:center;align-items:center}.tool-btn{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-raised);color:var(--ink-dim);cursor:pointer;transition:all .15s ease}.tool-btn svg{width:17px;height:17px}.tool-btn:hover:not(:disabled):not(.active){color:var(--ink);border-color:var(--ink)}.tool-btn.active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.tool-btn.active:hover{color:var(--bg)}.tool-btn:disabled{opacity:.35;cursor:not-allowed}.tool-btn.wand-global{width:auto;padding:0 10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em}.tb-sep{width:1px;height:22px;background:var(--line-strong);margin:0 4px}.tb-color{width:32px;height:32px;padding:2px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-raised);cursor:pointer}.swatches{display:grid;grid-template-columns:repeat(5,14px);grid-auto-rows:14px;gap:3px;flex-shrink:0}.swatch{width:14px;height:14px;border:1px solid var(--line-strong);border-radius:3px;padding:0;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.swatch:hover{transform:scale(1.18)}.swatch.active{box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--accent)}.lp-locked{margin:0 0 8px;padding:14px 10px}.lp-colour{display:flex;flex-direction:column;gap:7px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--line)}.cp{display:flex;flex-direction:column;gap:7px}.cp-sv{position:relative;height:104px;border-radius:var(--radius);border:1px solid var(--line-strong);cursor:crosshair;touch-action:none}.cp-dot{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #0000008c;pointer-events:none}.cp-hue{position:relative;height:14px;border-radius:999px;border:1px solid var(--line-strong);cursor:pointer;touch-action:none;background:linear-gradient(to right,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.cp-hue-dot{position:absolute;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--bg-raised);border:2px solid #fff;box-shadow:0 0 0 1px #0000008c;pointer-events:none}.cp-foot{display:flex;align-items:center;gap:7px}.cp-preview{width:26px;height:26px;border-radius:var(--radius);border:1px solid var(--line-strong);flex-shrink:0}.cp-hex{flex:1;min-width:0;font-family:var(--font-mono);font-size:12px;text-transform:uppercase;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--radius);padding:5px 8px}.cp-hex:focus{outline:1.5px solid var(--accent);outline-offset:1px}.tb-slider input[type=range]{width:90px;accent-color:var(--accent)}.ie-stage{position:relative;display:grid;place-items:center;background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--radius);padding:12px;overflow:hidden}.ie-canvas,.ie-overlay{max-width:100%;max-height:56vh;grid-area:1 / 1;border-radius:2px}.ie-overlay{cursor:crosshair;touch-action:none}.ie-textinput{position:absolute;background:transparent;border:1px dashed var(--accent);font-family:var(--font-body);font-weight:600;padding:2px 6px;min-width:140px;outline:none}.ie-layout{display:grid;grid-template-columns:minmax(0,1fr) 8px min(var(--ie-panel-w, 262px),42vw);gap:6px;align-items:start}@media (max-width: 720px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.ie-layout{grid-template-columns:minmax(0,1fr);gap:12px}}.ie-gutter,.split-gutter{align-self:stretch;cursor:col-resize;touch-action:none;position:relative;border-radius:4px;transition:background .15s ease}.ie-gutter:before,.split-gutter:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:38px;border-radius:2px;background:var(--line-strong);transition:background .15s ease,box-shadow .15s ease}.ie-gutter:hover,.split-gutter:hover{background:var(--panel)}.ie-gutter:hover:before,.ie-gutter:active:before,.split-gutter:hover:before,.split-gutter:active:before{background:var(--accent);box-shadow:0 0 8px color-mix(in srgb,var(--accent) 50%,transparent)}.split-gutter.h{cursor:row-resize;height:8px;flex-shrink:0}.split-gutter.h:before{width:38px;height:2px}@media (max-width: 720px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.ie-gutter{display:none}}@media (max-width: 760px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.split-gutter{display:none}}.ie-vpwrap{position:relative;min-height:0;display:flex;min-width:0}.ie-vpwrap .ie-viewport{flex:1;min-width:0}.lp-fab{display:none;position:absolute;right:12px;top:12px;z-index:6;width:42px;height:42px;border-radius:50%;border:1px solid var(--line-strong);background:var(--bg-raised);color:var(--ink-dim);place-items:center;box-shadow:var(--shadow);cursor:pointer}.lp-fab.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:var(--glow)}.lp-scrim{display:none}.zoom-float{position:absolute;right:12px;bottom:10px;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--ink-dim);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:6px;padding:2px 8px;pointer-events:none;z-index:5}.ie-viewport{overflow:auto;max-height:54vh;background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.ie-inner{position:relative;margin:0 auto}.ie-canvas2{display:block;touch-action:none;border-radius:2px;box-shadow:var(--shadow);background:repeating-conic-gradient(var(--bg-sunken) 0% 25%,var(--bg-raised) 0% 50%) 0 0 / 16px 16px}.zoom-ctrl{display:flex;align-items:center;gap:4px}.zoom-ctrl .tool-btn{width:28px;height:28px;font-family:var(--font-mono);font-size:14px}.zoom-val{font-family:var(--font-mono);font-size:11px;color:var(--ink-dim);min-width:42px;text-align:center}.layers-panel{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);padding:10px 12px;max-height:54vh;overflow-y:auto}.layer-item{display:flex;align-items:center;gap:7px;padding:6px 4px;border-bottom:1px solid var(--line);cursor:pointer;font-size:12.5px;border-radius:4px}.layer-item:last-child{border-bottom:none}.layer-item.active{background:var(--accent-soft);outline:1px solid var(--accent)}.layer-eye{border:none;background:none;color:var(--ink-dim);cursor:pointer;padding:2px;display:grid;place-items:center}.layer-swatch{width:10px;height:10px;border-radius:3px;border:1px solid var(--line-strong);flex-shrink:0}.layer-name{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--ink)}.layer-btns{display:flex;gap:2px}.layer-btns button{border:none;background:none;color:var(--ink-faint);font-family:var(--font-mono);font-size:12px;cursor:pointer;padding:1px 4px;border-radius:4px}.layer-btns button:hover{color:var(--ink);background:var(--panel)}.lp-head{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:8px}.lp-ops{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:8px}.lp-ops button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;border:1px solid var(--line-strong);border-radius:6px;background:var(--bg-raised);color:var(--ink-dim);font-size:10.5px;cursor:pointer;transition:all .15s ease}.lp-ops button:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.lp-ops button:disabled{opacity:.35;cursor:not-allowed}.lp-hist{margin-bottom:10px}.lp-hist-head{width:100%;display:flex;align-items:center;gap:6px;padding:4px 0 8px;background:none;border:none;border-bottom:1px solid var(--line);cursor:pointer;color:inherit}.lp-hist-count{font-family:var(--font-mono);font-size:11px;color:var(--ink-faint);margin-left:auto}.lp-hist-chev{font-size:11px;color:var(--ink-faint);transition:transform .15s ease}.lp-hist-chev.open{transform:rotate(180deg)}.lp-hist-empty{padding:8px 0 0}.lp-hist-list{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto;padding-top:8px}.hist-item{display:flex;align-items:center;gap:8px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:var(--bg-raised);color:var(--ink-dim);font-size:12px;cursor:pointer;text-align:left;transition:all .15s ease}.hist-item:hover:not(.current){border-color:var(--accent);color:var(--ink);box-shadow:var(--glow)}.hist-item.current{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);cursor:default}.hist-item.hist-future{opacity:.72;border-style:dashed}.hist-item.hist-future:hover{opacity:1}.hist-n{font-family:var(--font-mono);font-size:11px;color:var(--ink-faint);flex:none;min-width:16px;text-align:right}.hist-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hist-now{font-family:var(--font-mono);font-size:10px;color:var(--accent);flex:none}.hist-item img,.hist-noimg{width:44px;height:30px;object-fit:contain;border-radius:3px;background:var(--panel);flex:none}.lp-props{display:flex;flex-direction:column;gap:7px;padding:8px 8px 10px;margin-bottom:8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}.lp-row{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap}.lp-row>span:first-child{min-width:52px;flex-shrink:0}.lp-row input[type=range]{flex:1;accent-color:var(--accent);min-width:0}.lp-blend{flex:1;font-size:11px;padding:5px 7px;min-width:0;text-transform:none}.lp-mask-btns{display:flex;gap:3px;margin-left:auto}.lp-mask .btn{font-size:11px;padding:5px 10px}.lp-mask-btns button{width:22px;height:22px;border:1px solid var(--line-strong);border-radius:5px;background:transparent;color:var(--ink-dim);cursor:pointer;font-size:11px}.lp-mask-btns button.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.lp-mask .btn{margin-left:auto}.lp-layer{border:1px solid var(--line);border-radius:var(--radius);margin-bottom:6px;overflow:hidden;transition:border-color .18s ease}.lp-layer.active{border-color:var(--accent)}.lp-layer-head{display:flex;align-items:center;gap:7px;min-height:40px;padding:8px 9px;cursor:pointer;background:var(--bg-raised);transition:background .15s ease}.lp-layer-head:hover{background:var(--panel)}.lp-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;-webkit-user-select:none;user-select:none}.lp-title-row{display:flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:11.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-disclose{border:none;background:none;padding:0;text-align:left;font-family:var(--font-mono);font-size:9.5px;color:var(--ink-faint);cursor:pointer;width:fit-content}.lp-disclose:hover{color:var(--accent)}.lp-thumb{width:36px;max-height:30px;flex-shrink:0;overflow:hidden;display:block;border:1px solid var(--line-strong);border-radius:4px;background:repeating-conic-gradient(var(--bg-sunken) 0% 25%,var(--bg-raised) 0% 50%) 0 0 / 8px 8px}.lp-thumb img{width:100%;height:100%;object-fit:contain;display:block}.lp-layer{cursor:pointer}.layer-bg-row{cursor:default}.layer-bg-row .lp-title-row{color:var(--ink);font-family:var(--font-mono);font-size:11.5px;font-weight:600}.layer-bg-row .layer-off{color:var(--ink-faint);text-decoration:line-through}.lp-actions{display:flex;gap:1px;flex-shrink:0;opacity:0;transition:opacity .15s ease}.lp-layer-head:hover .lp-actions,.lp-layer.active .lp-actions{opacity:1}.lp-actions button{width:22px;height:22px;border:none;background:none;color:var(--ink-faint);cursor:pointer;border-radius:4px;display:grid;place-items:center;font-size:11px}.lp-actions button:hover{color:var(--accent);background:var(--bg)}.lp-layer.active .lp-layer-head{background:var(--accent-soft)}.lp-name{flex:1;min-width:0;font-family:var(--font-mono);font-size:11.5px;font-weight:600;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:4px;padding:2px 4px}.lp-name:hover,.lp-name:focus{border-color:var(--line-strong);outline:none}.lp-badge{font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--accent);border:1px solid var(--accent);border-radius:3px;padding:0 3px;flex-shrink:0}.lp-badge.lock,.lp-badge.dim{color:var(--ink-faint);border-color:var(--line-strong)}.lp-badge.lock{display:inline-grid;place-items:center;padding:1px 3px}.lp-obj{min-height:32px;align-items:center}.canvas-modal{width:min(440px,94vw)}.preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px}.preset{display:flex;flex-direction:column;gap:2px;padding:8px 9px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-raised);cursor:pointer;text-align:left;transition:all .15s ease}.preset:hover{border-color:var(--ink)}.preset.active{border-color:var(--accent);background:var(--accent-soft)}.preset-name{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--ink)}.preset-dim{font-family:var(--font-mono);font-size:10px;color:var(--ink-faint)}.size-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.size-field{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;color:var(--ink-faint)}.size-field input{width:84px;font-family:var(--font-mono);font-size:13px;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--radius);padding:7px 9px}.size-field input:focus{outline:1.5px solid var(--accent);outline-offset:1px}.layer-btns button.on{color:var(--accent)}.lp-obj{padding-left:14px;border-bottom:none;border-top:1px solid var(--line);font-size:12px}.lp-empty{padding:6px 10px;margin:0;font-size:11px}.layer-item.layer-bg{border-top:1px dashed var(--line-strong);margin-top:6px;padding-top:9px;cursor:default}.layer-bg-swatch{width:18px;height:18px;padding:1px;border:1px solid var(--line-strong);border-radius:5px;background:var(--bg-raised);cursor:pointer;flex-shrink:0}.layer-name.layer-off{color:var(--ink-faint);text-decoration:line-through}.gif-transport{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;min-height:50px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);padding:6px 12px;margin-bottom:12px}.gif-transport>*{flex-shrink:0}.play-btn{background:var(--ink);border-color:var(--ink);color:var(--bg)}.play-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:var(--glow)}.gif-pos{font-family:var(--font-mono);font-size:12px;color:var(--ink-dim);min-width:70px}.gif-delay{display:flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-faint)}.gif-delay input[type=number]{width:72px;font-family:var(--font-mono);font-size:12.5px;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--radius);padding:6px 8px}.strip{display:flex;gap:6px;overflow-x:auto;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-sunken);margin-bottom:14px}.thumb{position:relative;flex-shrink:0;border:1.5px solid var(--line-strong);border-radius:5px;padding:0;background:var(--bg-raised);cursor:pointer;overflow:hidden;transition:border-color .15s ease,opacity .15s ease}.thumb img{display:block;height:48px}.thumb span{position:absolute;bottom:1px;right:3px;font-family:var(--font-mono);font-size:9px;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000}.thumb.active{border-color:var(--accent);box-shadow:0 0 10px color-mix(in srgb,var(--accent) 45%,transparent)}.thumb.dim{opacity:.35}.tb-select{font-family:var(--font-mono);font-weight:600;font-size:12px;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--radius);padding:7px 8px;cursor:pointer}.tb-select:hover{border-color:var(--ink)}.cap-panel .sp-label{display:flex;align-items:center;justify-content:space-between}.cap-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised)}.cap-text{flex:1;min-width:140px}.num-sm{width:58px;font-family:var(--font-mono);font-size:12.5px;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--radius);padding:6px 7px}.cap-dash{font-family:var(--font-mono);color:var(--ink-faint)}.cap-row select{font-family:var(--font-mono);font-size:12px;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--radius);padding:6px 7px;cursor:pointer}.pdf-editor{display:flex;flex-direction:column}.pdf-editor>:not(.pdf-body){flex-shrink:0}.pdf-tools{flex-wrap:wrap;row-gap:6px}.pdf-tools .btn-sm{display:inline-flex;align-items:center;gap:6px}.pdf-tools .pdf-del:not(:disabled):hover{color:var(--danger);border-color:var(--danger)}.pdf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;align-content:start;padding:10px;min-height:220px;max-height:64vh;overflow-y:auto;background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--wobble-sm)}.pdf-status{grid-column:1 / -1;display:flex;align-items:center;gap:8px;justify-content:center;padding:40px 0;font-family:var(--font-mono);font-size:12px;color:var(--ink-faint)}.pdf-status.danger{color:var(--danger)}.pdf-page{position:relative;display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--line);border-radius:var(--wobble-sm);background:var(--bg-raised);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .12s,box-shadow .12s,transform .12s}.pdf-page:hover{border-color:var(--line-strong)}.pdf-page.sel{border-color:var(--accent);box-shadow:var(--glow)}.pdf-page.dragging{opacity:.45}.pdf-page.over-before:before,.pdf-page.over-after:after{content:"";position:absolute;top:6px;bottom:6px;width:3px;background:var(--accent);box-shadow:var(--glow);border-radius:2px}.pdf-page.over-before:before{left:-8px}.pdf-page.over-after:after{right:-8px}.pdf-thumb{position:relative;display:grid;place-items:center;width:100%;background:#fff;border:1px solid var(--line);overflow:hidden}.pdf-thumb img{width:100%;height:100%;object-fit:contain;display:block}.pdf-badge{position:absolute;left:6px;bottom:6px;padding:1px 6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;color:var(--accent-ink);background:var(--accent);border-radius:4px}.pdf-badge.rot{left:auto;right:6px;background:var(--paint-yellow);color:#1a1500}.pdf-page-foot{display:flex;align-items:center;gap:6px}.pdf-num{flex:1;text-align:center;font-family:var(--font-mono);font-size:12px;color:var(--ink-dim)}.pdf-check,.pdf-ins{display:grid;place-items:center;width:20px;height:20px;padding:0;border:1px solid var(--line-strong);border-radius:4px;background:var(--bg);color:var(--ink-dim);cursor:pointer}.pdf-check.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.pdf-ins:hover{border-color:var(--accent);color:var(--accent)}.pdf-progress{margin-top:10px}.pdf-badge.deco{left:auto;right:6px;top:6px;bottom:auto;background:var(--bg-raised);color:var(--ink);border:1px solid var(--line-strong)}.pdf-lock{margin-right:6px;font-size:13px}.fc-lock.open{opacity:.75}.pdf-body{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:0 12px;min-height:0;transition:gap .28s ease}.pdf-body:not(.with-preview){gap:0}.pdf-gutter{width:8px;align-self:stretch;transition:width .28s ease}.pdf-body:not(.with-preview) .pdf-gutter{width:0;pointer-events:none;visibility:hidden}.pdf-preview{display:flex;flex-direction:column;gap:8px;width:min(var(--pdf-prev-w, 400px),46vw);min-width:0;max-height:64vh;padding:10px;background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--wobble-sm);overflow:hidden;transition:width .28s ease,opacity .22s ease,padding .28s ease,visibility 0s linear 0s}.pdf-body:not(.with-preview) .pdf-preview{width:0;padding:10px 0;border-width:0;opacity:0;pointer-events:none;visibility:hidden;transition:width .28s ease,opacity .22s ease,padding .28s ease,visibility 0s linear .28s}.editor-overlay>.editor.pdf-editor{height:min(920px,100%)}.editor-overlay>.editor.pdf-editor .pdf-body{flex:1 1 auto;min-height:0}.editor-overlay>.editor.pdf-editor .pdf-grid,.editor-overlay>.editor.pdf-editor .pdf-preview{max-height:none;height:100%}.pdf-preview-bar{display:flex;align-items:center;gap:6px}.pdf-preview-bar .pdf-num{flex:0 0 auto;min-width:64px}.pdf-dims{margin-left:auto}.pdf-preview-stage{flex:1 1 auto;min-height:160px;display:grid;place-items:center;overflow:auto;background:repeating-linear-gradient(45deg,transparent 0 10px,color-mix(in srgb,var(--line) 40%,transparent) 10px 11px)}.pdf-preview-stage.noting{cursor:crosshair}.pdf-preview-page{position:relative;max-width:100%;max-height:100%;width:auto;height:100%;background:#fff;box-shadow:0 4px 24px #00000040}.pdf-preview-page img{display:block;width:100%;height:100%;object-fit:contain;animation:pdfPrevIn .18s ease}.pdf-preview-page.zoomable{cursor:zoom-in}@keyframes pdfPrevIn{0%{opacity:0}to{opacity:1}}.pdf-zoom{position:fixed;top:0;right:0;bottom:0;left:0;z-index:140;display:grid;place-items:center;padding:24px;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:zoom-out;animation:pdfPrevIn .18s ease;overflow:auto}.pdf-zoom img{max-width:min(1400px,96vw);max-height:calc(100vh - 48px);width:auto;height:auto;background:#fff;box-shadow:0 10px 50px #00000080}.pdf-zoom-close{position:fixed;top:14px;right:14px}.pdf-note-pin{position:absolute;transform:translate(-50%,-100%);width:22px;height:22px;padding:0;border:2px solid #1a1500;border-radius:6px 6px 6px 0;background:var(--paint-yellow);color:#1a1500;font:700 11px var(--font-mono);cursor:pointer;box-shadow:0 2px 6px #00000059}.pdf-note-pin.active{outline:2px solid var(--accent);box-shadow:var(--glow)}.pdf-notes{display:flex;flex-direction:column;gap:6px;max-height:32%;overflow-y:auto}.pdf-note-row{display:flex;align-items:flex-start;gap:6px;padding:4px;border-radius:6px}.pdf-note-row.active{background:color-mix(in srgb,var(--accent) 12%,transparent)}.pdf-note-row textarea{flex:1;resize:vertical;min-height:40px;font-size:13px}.pdf-note-idx{flex:0 0 22px;height:22px;display:grid;place-items:center;border-radius:6px 6px 6px 0;background:var(--paint-yellow);color:#1a1500;font:700 11px var(--font-mono)}.pdf-wm{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px 14px;align-items:end;margin-bottom:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--wobble-sm);background:var(--bg-raised)}.pdf-wm-field{display:flex;flex-direction:column;gap:4px;min-width:0}.pdf-wm-field input[type=range]{width:100%}.pdf-wm-text{grid-column:span 2}.pdf-wm-color{grid-column:1 / -1}.pdf-wm-color .cp{max-width:260px}.pdf-wm-btns{display:flex;gap:6px;flex-wrap:wrap}.pdf-wm-apply{grid-column:1 / -1;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.pdf-export,.pw-modal{display:flex;flex-direction:column;gap:10px}.pdf-x-row{display:flex;align-items:center;gap:10px}.pdf-x-row .sp-label{flex:0 0 110px}.pdf-x-row .ed-input{flex:1;min-width:0}.pdf-x-pw{display:flex;flex-direction:column;gap:8px;padding:8px 10px;border-left:2px solid var(--accent)}.pw-file{font-family:var(--font-mono);font-size:12px;color:var(--ink-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pw-row{display:flex;gap:6px}.pw-input{flex:1;min-width:0;font-size:16px;letter-spacing:.1em}.pw-err{color:var(--danger);font-size:13px;margin:0}.pw-modal.shake{animation:pwShake .35s}@keyframes pwShake{0%,to{transform:none}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.editor.ie-inline.pdf-editor{display:flex;flex-direction:column}.editor.ie-inline .pdf-body{flex:1 1 auto;min-height:0}.editor.ie-inline .pdf-grid,.editor.ie-inline .pdf-preview{max-height:none;height:100%}@media (max-width: 760px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.pdf-body,.pdf-body.with-preview{grid-template-columns:minmax(0,1fr);gap:12px}.pdf-gutter{display:none}.pdf-preview{width:auto;max-height:52vh;transition:none}.pdf-body:not(.with-preview) .pdf-preview{display:none}.editor-overlay>.editor.pdf-editor .pdf-grid{height:auto;max-height:64vh}.editor-overlay>.editor.pdf-editor .pdf-preview{height:auto;max-height:52vh}.editor.ie-inline .pdf-grid{max-height:40vh;height:auto}.editor.ie-inline .pdf-preview{max-height:46vh;height:auto}}@media (max-width: 640px){.pdf-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px;padding:8px;max-height:none;flex:1}.editor-overlay>.editor.pdf-editor{height:100dvh}.editor-overlay>.editor.pdf-editor .pdf-body{flex:1 1 auto;min-height:0;overflow-y:auto}.editor-overlay>.editor.pdf-editor .pdf-grid{max-height:none}.pdf-editor .kbd-hints{display:none}.pdf-wm-text{grid-column:1 / -1}.pdf-x-row{flex-wrap:wrap}.pdf-x-row .sp-label{flex-basis:100%}}@media (pointer: coarse){.pdf-check,.pdf-ins{width:28px;height:28px}}.doc-mdbar{position:relative;gap:4px}.mdb-btn{font-size:13px}.mdb-btn.mdb-wide{width:auto;padding:0 8px;font-family:var(--font-mono);font-size:11px}.md-heading{width:92px;flex-shrink:0}.md-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:30;display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--bg-raised);border:1px solid var(--line-strong);border-radius:var(--wobble-sm);box-shadow:var(--shadow),var(--glow)}.md-grid{display:grid;grid-template-columns:repeat(8,18px);gap:3px}.md-cell{width:18px;height:18px;border:1px solid var(--line-strong);border-radius:3px;background:var(--bg-sunken);cursor:pointer}.md-cell.on{background:var(--accent);border-color:var(--accent)}.md-pop-qr{flex-direction:row;align-items:center;width:min(360px,80vw)}.md-pop-qr .ed-input{flex:1;min-width:0;font-family:var(--font-mono);font-size:12px}.editor.ie-inline.doc-editor{display:flex;flex-direction:column}.editor.ie-inline .doc-body{flex:1 1 auto;height:auto;min-height:0}.doc-editor{display:flex;flex-direction:column}.doc-tools .chip{font-family:var(--font-mono);font-size:11px}.doc-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;height:58vh;min-height:240px}.doc-editor.view-source .doc-body,.doc-editor.view-preview .doc-body{grid-template-columns:minmax(0,1fr)}.doc-source{width:100%;height:100%;resize:none;padding:12px 14px;border:1px solid var(--line);border-radius:var(--wobble-sm);background:var(--bg-sunken);color:var(--ink);font:13px/1.55 var(--font-mono);-moz-tab-size:2;tab-size:2}.doc-source:focus{outline:none;border-color:var(--accent);box-shadow:var(--glow)}.doc-preview{overflow:auto;padding:18px 22px;border:1px solid var(--line);border-radius:var(--wobble-sm);background:#fff;color:#1c2030}.doc-prose{font:15px/1.65 var(--font-body);word-break:break-word}.doc-prose h1,.doc-prose h2,.doc-prose h3,.doc-prose h4{font-family:var(--font-display);line-height:1.25;margin:1.2em 0 .5em;color:#0d1020}.doc-prose h1{font-size:1.9em;border-bottom:1px solid #ddd;padding-bottom:.25em}.doc-prose h2{font-size:1.5em}.doc-prose h3{font-size:1.2em}.doc-prose p,.doc-prose ul,.doc-prose ol,.doc-prose table,.doc-prose pre,.doc-prose blockquote{margin:0 0 .9em}.doc-prose ul,.doc-prose ol{padding-left:1.6em}.doc-prose a{color:#3a56d4}.doc-prose code{font-family:var(--font-mono);font-size:.9em;background:#f0f2f7;padding:1px 5px;border-radius:4px}.doc-prose pre{background:#f0f2f7;padding:12px 14px;border-radius:6px;overflow:auto}.doc-prose pre code{background:none;padding:0}.doc-prose blockquote{border-left:3px solid #c9cfe0;padding-left:12px;color:#555c70}.doc-prose table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.doc-prose th,.doc-prose td{border:1px solid #c9cfe0;padding:4px 10px;text-align:left}.doc-prose th{background:#eef1f8}.doc-prose img{max-width:100%;height:auto}.doc-prose hr{border:0;border-top:1px solid #ddd;margin:1.2em 0}@media (max-width: 760px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.doc-body{grid-template-columns:minmax(0,1fr);grid-template-rows:1fr 1fr;height:auto;flex:1 1 auto;min-height:0}.doc-editor.view-source .doc-body,.doc-editor.view-preview .doc-body{grid-template-rows:1fr}}@media (max-width: 640px){.editor-overlay>.editor.doc-editor{height:100dvh}.doc-tools .ed-hint{display:none}.doc-source{font-size:16px}}.sheet-editor{display:flex;flex-direction:column;gap:10px}.sheet-tools{flex-wrap:wrap;row-gap:6px}.sheet-tabs{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.sheet-tab{padding:4px 12px;border:1px solid var(--line);border-bottom-color:transparent;border-radius:6px 6px 0 0;background:var(--bg-sunken);color:var(--ink-dim);font:500 12px var(--font-mono);cursor:pointer}.sheet-tab.active{background:var(--bg-raised);color:var(--ink);border-color:var(--accent)}.sheet-tab.sheet-add,.sheet-tab.sheet-del{padding:4px 8px}.sheet-tab.sheet-del:hover{color:var(--danger);border-color:var(--danger)}.sheet-rename{width:140px;padding:3px 8px;font-size:12px}.sheet-grid{position:relative;overflow:auto;max-height:58vh;min-height:220px;border:1px solid var(--line);border-radius:0 var(--wobble-sm) var(--wobble-sm);background:var(--bg-raised)}.sheet-grid table{border-collapse:separate;border-spacing:0;min-width:100%;font:13px var(--font-mono)}.sheet-grid th,.sheet-grid td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:0}.sheet-grid thead th{position:sticky;top:0;z-index:2;height:26px;min-width:96px;padding:0 8px;background:var(--bg-sunken);color:var(--ink-faint);font-weight:600;font-size:11px;letter-spacing:.06em;cursor:pointer}.sheet-grid tbody th{position:sticky;left:0;z-index:1;width:44px;min-width:44px;padding:0 6px;text-align:right;background:var(--bg-sunken);color:var(--ink-faint);font-weight:500;font-size:11px;cursor:pointer}.sheet-grid th.sh-corner{left:0;z-index:3}.sheet-grid th.sel{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--bg-sunken))}.sheet-grid td{min-width:96px;background:var(--bg-raised)}.sheet-grid td.sel{outline:2px solid var(--accent);outline-offset:-2px}.sheet-grid tr.sh-header td{background:color-mix(in srgb,var(--accent) 7%,var(--bg-raised))}.sheet-grid tr.sh-header input{font-weight:600}.sheet-grid td input{width:100%;min-width:96px;height:28px;padding:0 8px;border:0;background:transparent;color:var(--ink);font:inherit;outline:none}.sheet-grid td input.num{text-align:right;color:var(--paint-blue)}.sheet-grid td input:focus{background:color-mix(in srgb,var(--accent) 10%,var(--bg-raised))}.sheet-more{display:block;margin:10px auto}@media (max-width: 640px){.editor-overlay>.editor.sheet-editor{height:100dvh}.sheet-grid{max-height:none;flex:1 1 auto;min-height:0}.sheet-grid td input{height:34px;font-size:16px}}.qr-tool{display:flex;flex-direction:column;gap:12px}.qr-foot{margin-top:4px}.qr-tool .ed-head{gap:12px}.qr-tabs{margin-left:auto}.qr-make{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.qr-form{display:flex;flex-direction:column;gap:12px;min-width:0}.qr-tpl{flex-wrap:wrap}.qr-field{display:flex;flex-direction:column;gap:4px}.qr-field .ed-input{width:100%}.qr-text{resize:vertical;font-family:var(--font-mono);font-size:13px}.qr-sec{display:flex;flex-direction:column;gap:12px;padding:12px 14px 14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised)}.qr-sec-title{margin:0}.qr-style{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px 14px;align-items:end}.qr-style .qr-sec-title{grid-column:1 / -1;align-self:start}.qr-colors{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.qr-colors .cp{max-width:240px}.qr-color-chip{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-sunken);color:var(--ink);font:600 12px var(--font-mono);cursor:pointer}.qr-color-chip.open{border-color:var(--accent);box-shadow:var(--glow)}.qr-chip-dot{width:18px;height:18px;flex-shrink:0;border:1px solid var(--line-strong);border-radius:4px}.qr-chip-dot.checker{background:repeating-conic-gradient(#ccd 0,#ccd 25%,#fff 0,#fff 50%) 0 0 / 8px 8px}.qr-chip-hex{flex:1;text-align:left}.qr-chip-caret{color:var(--ink-faint);font-size:10px}.qr-preview{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-sunken);align-self:start}.qr-canvas{width:100%;aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--wobble-sm);overflow:hidden;background:#fff}.qr-canvas.checker{background:repeating-conic-gradient(#ccd 0,#ccd 25%,#fff 0,#fff 50%) 0 0 / 20px 20px}.qr-canvas img{width:100%;height:100%;image-rendering:pixelated}.qr-payload{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.qr-read{display:flex;flex-direction:column;gap:12px}.qr-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:200px;padding:20px;text-align:center;cursor:pointer;border:1.5px dashed var(--line-strong);border-radius:var(--wobble-lg);background:var(--bg-sunken);color:var(--ink-dim)}.qr-drop:hover,.qr-drop.drop-hot{border-color:var(--accent);box-shadow:var(--glow)}.qr-drop p{margin:0}.qr-video{width:100%;max-height:50vh;border-radius:var(--wobble-sm);background:#000}.qr-read-actions{display:flex;gap:8px;flex-wrap:wrap}.qr-result{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--line);border-radius:var(--wobble-sm);background:var(--bg-raised)}.qr-decoded{font-family:var(--font-mono);font-size:13px;resize:vertical}.qr-kind{align-self:flex-start}.qr-kind-url{border-color:var(--paint-green);color:var(--paint-green)}.fc-qr{cursor:pointer;border-color:var(--paint-green);color:var(--paint-green);background:transparent;font:inherit}.fc-qr:hover{box-shadow:var(--glow)}.dz-note{margin-top:8px;background:none;border:0;color:var(--accent);font:500 13px var(--font-body);text-decoration:underline dotted;cursor:pointer}@media (max-width: 760px){.qr-make{grid-template-columns:minmax(0,1fr)}.qr-preview{order:-1}.qr-canvas{max-width:260px}}@media (max-width: 640px){.topbar .qr-btn{display:none}.qr-overlay{z-index:90;background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}.editor-overlay.qr-overlay>.editor.qr-tool{height:100dvh;overflow:hidden;padding-top:max(14px,env(safe-area-inset-top));padding-bottom:calc(58px + env(safe-area-inset-bottom))}.qr-tool .qr-foot{display:none}.qr-make{flex:1 1 auto;min-height:0;grid-template-rows:auto minmax(0,1fr);gap:12px}.qr-form{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:8px}.qr-sec{padding:10px 12px;gap:8px}.qr-style,.qr-colors{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}.qr-preview{padding:10px;gap:8px}.qr-canvas{width:auto;height:14vh;max-height:150px;aspect-ratio:1;max-width:none}.qr-tool .qr-actions .btn{min-height:34px;padding:5px 12px;font-size:13px}.qr-payload{display:none}.qr-read{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.qr-foot{flex-shrink:0}}.studio-toggle{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-raised);color:var(--ink-dim);font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.04em;cursor:pointer;transition:all .18s ease}.studio-toggle:hover{color:var(--ink);border-color:var(--ink)}.studio-toggle.active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.app.studio-mode{max-width:none;padding:0 22px}.app.studio-mode .footer{display:none}.studio{padding:14px 0 16px;height:calc(100vh - 96px);display:flex;flex-direction:column;animation:rise .4s ease backwards}.st-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;flex-shrink:0}.st-focus-btn,.st-save{display:none}.st-body:has(.st-assets.collapsed){grid-template-columns:max-content 0 1fr}.st-body:has(.st-assets.collapsed) .split-gutter{display:none}.st-assets.collapsed>:not(.st-assets-head){display:none}.st-assets.collapsed .st-assets-head{margin-bottom:0;gap:10px}.st-assets.collapsed .st-assets-head .asset-size{display:none}.st-assets.collapsed{max-height:none;height:fit-content}.st-name{font-family:var(--font-display);font-size:18px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:var(--radius);padding:5px 10px;min-width:120px;max-width:260px}.st-name:hover,.st-name:focus{border-color:var(--line-strong);outline:none}.st-body{display:grid;grid-template-columns:min(var(--st-assets-w, 252px),40vw) 8px minmax(0,1fr);gap:4px;flex:1;min-height:0}@media (max-width: 760px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.st-body,.st-body:has(.st-assets.collapsed){grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.studio.st-focus .st-body,.studio.st-focus .st-body:has(.st-assets.collapsed){grid-template-rows:minmax(0,1fr)}.st-assets.collapsed .st-assets-head .asset-size{display:inline}}.st-assets{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);padding:12px 14px;overflow-y:auto;min-height:0;animation:panelIn .4s .05s ease backwards}.st-main{min-width:0;min-height:0;display:flex;flex-direction:column;animation:panelIn .4s .12s ease backwards}@keyframes panelIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.view-anim{display:flex;flex-direction:column;flex:1;min-height:0;animation:rise .3s ease backwards}.mixer{display:flex;flex-direction:column;flex:1;min-height:0}.media-view{flex:1;min-height:0;overflow-y:auto;padding-right:2px}.st-assets-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;flex-wrap:wrap}.st-fab,.st-scrim{display:none}.st-assets-toggle{display:inline-flex;background:none;border:none;padding:4px 6px;cursor:pointer;color:var(--ink-faint)}.st-import{width:100%;justify-content:center;margin-bottom:10px}.st-empty{font-family:var(--font-mono);font-size:11.5px;line-height:1.7;color:var(--ink-faint);border:1.5px dashed var(--line-strong);border-radius:var(--wobble-lg);padding:18px 12px;text-align:center}.asset-row{display:flex;align-items:center;gap:8px;padding:7px 4px;border-bottom:1px solid var(--line);font-size:12.5px}.asset-row:last-child{border-bottom:none}.asset-icon{color:var(--ink-dim);display:grid;place-items:center;flex-shrink:0}.asset-name{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.asset-size{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-faint);flex-shrink:0}.asset-btns{display:flex;gap:2px;flex-shrink:0}.asset-btns button{border:none;background:none;color:var(--ink-faint);font-size:13px;cursor:pointer;padding:2px 5px;border-radius:4px;display:grid;place-items:center}.asset-btns button:hover{color:var(--accent);background:var(--panel)}.mixer{min-width:0}.rec-btn.recording{background:var(--danger);border-color:var(--danger);color:#fff;animation:recPulse 1.2s ease-in-out infinite}@keyframes recPulse{0%,to{opacity:1}50%{opacity:.55}}.tl-scroll{overflow:auto;flex:1;min-height:0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised)}.tl-inner{position:relative;min-width:100%}.tl-row{display:flex}.trk-head{position:sticky;left:0;z-index:5;width:172px;flex-shrink:0;background:var(--bg-raised);border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line);padding:8px 10px;display:flex;flex-direction:column;gap:6px}.tl-corner{height:30px;padding:0;border-bottom:1px solid var(--line-strong)}.trk-name{font-family:var(--font-mono);font-size:11.5px;font-weight:600;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:4px;padding:2px 5px;width:100%}.trk-name:hover,.trk-name:focus{border-color:var(--line-strong);outline:none}.trk-btns{display:flex;gap:4px}.trk-btns button{width:24px;height:20px;font-family:var(--font-mono);font-size:10px;font-weight:600;border:1px solid var(--line-strong);border-radius:4px;background:transparent;color:var(--ink-dim);cursor:pointer}.trk-btns button.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.trk-gain{accent-color:var(--accent);width:100%}.tl-ruler{position:relative;height:30px;border-bottom:1px solid var(--line-strong);background:var(--bg-sunken);cursor:pointer;flex-shrink:0}.tick{position:absolute;top:0;bottom:0;border-left:1px solid var(--line);font-family:var(--font-mono);font-size:9px;color:var(--ink-faint);padding-left:3px;line-height:30px;pointer-events:none}.tick.major{border-left-color:var(--line-strong)}.tl-body{position:relative}.lane{position:relative;height:72px;flex-shrink:0;border-bottom:1px solid var(--line);background:repeating-linear-gradient(90deg,transparent 0 79px,var(--line) 79px 80px),var(--bg-sunken)}.clip{position:absolute;top:6px;bottom:6px;background:var(--accent-soft);border:1px solid var(--accent);border-radius:6px;overflow:hidden;cursor:grab;touch-action:none}.tl-row:nth-child(4n+2) .clip{border-color:var(--paint-blue);background:color-mix(in srgb,var(--paint-blue) 13%,transparent)}.tl-row:nth-child(4n+3) .clip{border-color:var(--paint-red);background:color-mix(in srgb,var(--paint-red) 12%,transparent)}.tl-row:nth-child(4n+4) .clip{border-color:var(--paint-green);background:color-mix(in srgb,var(--paint-green) 13%,transparent)}.tl-row:nth-child(4n+5) .clip{border-color:var(--paint-yellow);background:color-mix(in srgb,var(--paint-yellow) 14%,transparent)}.clip.sel{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 12px color-mix(in srgb,var(--accent) 40%,transparent);z-index:2}.clip-wave{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.clip-name{position:absolute;top:2px;left:6px;font-family:var(--font-mono);font-size:9px;color:var(--ink-dim);pointer-events:none;white-space:nowrap;overflow:hidden;max-width:calc(100% - 12px)}.clip-edge{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:2}.clip-edge.l{left:0}.clip-edge.r{right:0}.clip-edge:hover{background:var(--accent-soft)}.mix-empty{font-family:var(--font-mono);font-size:12px;color:var(--ink-faint);padding:30px 20px 30px 192px;margin:0}.playhead{position:absolute;top:-30px;bottom:0;width:1.5px;background:var(--accent);pointer-events:none;z-index:4}.tl-row.active .trk-head{border-left:3px solid var(--accent);padding-left:7px;background:color-mix(in srgb,var(--accent) 14%,var(--bg-raised))}.tl-row.active .lane{background-color:var(--accent-soft)}.rec-time{color:var(--danger);font-weight:600}.tl-scroll::-webkit-scrollbar,.st-assets::-webkit-scrollbar,.media-view::-webkit-scrollbar,.editor::-webkit-scrollbar,.ie-viewport::-webkit-scrollbar,.layers-panel::-webkit-scrollbar,.strip::-webkit-scrollbar,.ed-toolbar::-webkit-scrollbar,.ed-options::-webkit-scrollbar,.gif-transport::-webkit-scrollbar{width:9px;height:9px}.tl-scroll::-webkit-scrollbar-thumb,.st-assets::-webkit-scrollbar-thumb,.media-view::-webkit-scrollbar-thumb,.editor::-webkit-scrollbar-thumb,.ie-viewport::-webkit-scrollbar-thumb,.layers-panel::-webkit-scrollbar-thumb,.strip::-webkit-scrollbar-thumb,.ed-toolbar::-webkit-scrollbar-thumb,.ed-options::-webkit-scrollbar-thumb,.gif-transport::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px;border:2px solid transparent;background-clip:content-box}.tl-scroll::-webkit-scrollbar-track,.st-assets::-webkit-scrollbar-track,.media-view::-webkit-scrollbar-track{background:transparent}.tl-scroll,.st-assets,.media-view,.editor,.ie-viewport,.layers-panel,.strip{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.st-launcher{display:block;height:auto;min-height:calc(100vh - 96px)}.launcher-title{font-family:var(--font-display);font-weight:400;font-size:26px;margin:0}.pj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-top:6px}.pj-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);overflow:hidden;display:flex;flex-direction:column;animation:panelIn .4s ease backwards;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.pj-card:nth-child(2){animation-delay:.05s}.pj-card:nth-child(3){animation-delay:.1s}.pj-card:nth-child(4){animation-delay:.15s}.pj-card:nth-child(5){animation-delay:.2s}.pj-card:nth-child(n+6){animation-delay:.25s}.pj-card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:var(--glow)}.pj-open{border:none;background:none;text-align:left;padding:18px 18px 12px;cursor:pointer;display:flex;flex-direction:column;gap:5px;flex:1}.pj-name{font-family:var(--font-display);font-size:20px;color:var(--ink);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.pj-meta{font-family:var(--font-mono);font-size:11px;color:var(--ink-faint)}.pj-actions{display:flex;gap:8px;padding:0 14px 12px}.pj-new{border-style:dashed;align-items:center;justify-content:center;gap:8px;min-height:132px;cursor:pointer;color:var(--ink-dim);padding:18px}.pj-new:hover{color:var(--accent);border-color:var(--accent)}.pj-new .pj-plus{font-size:28px;line-height:1}.type-badge{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line-strong);border-radius:4px;padding:2px 8px;color:var(--ink-dim);background:var(--panel);width:fit-content;white-space:nowrap}.tb-audio{border-color:var(--paint-blue);color:var(--paint-blue)}.tb-text{border-color:var(--accent);color:var(--accent)}.tb-image{border-color:var(--paint-green);color:var(--paint-green)}.tb-gif{border-color:var(--paint-yellow);color:var(--paint-yellow)}.tb-video{border-color:var(--paint-red);color:var(--paint-red)}.pj-type{align-items:flex-start;gap:6px;padding:20px 18px;cursor:pointer;text-align:left}.pj-type:hover{border-color:var(--accent)}.type-icon{color:var(--accent);display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);margin-bottom:4px}.picker-panel{border:1.5px dashed var(--line-strong);border-radius:var(--wobble-lg);background:var(--bg-raised);padding:26px;display:flex;flex-direction:column;gap:14px;align-items:flex-start;animation:rise .3s ease backwards}.picker-list{display:flex;flex-wrap:wrap;gap:8px}.picker-list .btn{max-width:260px;overflow:hidden;text-overflow:ellipsis;display:inline-block}.ie-inline-wrap{display:flex;flex:1;min-height:0}.editor.ie-inline{flex:1;min-height:0;max-height:none;width:100%;overflow-y:auto;animation:rise .3s ease backwards}.editor.ie-inline{display:flex;flex-direction:column;overflow:hidden}.editor.ie-inline>*{flex-shrink:0}.editor.ie-inline .ie-layout{flex:1;min-height:0;align-items:stretch}.editor.ie-inline .ie-vpwrap{height:100%;min-height:0}.editor.ie-inline .ie-viewport{max-height:none;height:100%}.editor.ie-inline .layers-panel{max-height:none}.zf-sep{margin:0 6px;color:var(--ink-faint)}.vw{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}.vw-tabs{display:none;align-self:flex-start}.vw-top{display:grid;grid-template-columns:minmax(0,1fr) 8px min(var(--vw-side-w, 250px),44vw);gap:4px;flex-shrink:0}@media (max-width: 760px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.vw-top{grid-template-columns:minmax(0,1fr)}}.vw-preview{background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--radius-lg);display:grid;grid-template-rows:100%;place-items:center;height:var(--vw-ph, 34vh);overflow:hidden}.vw-preview video{max-width:100%;height:100%;object-fit:contain}.vw-side{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.vw-extract{display:flex;align-items:center;gap:8px}.vw-extract .btn{flex:1 1 auto;justify-content:center}.vw-note{margin:0;font-family:var(--font-mono);font-size:11.5px;color:var(--paint-yellow)}.pj-thumb{height:96px;width:100%;background:repeating-conic-gradient(var(--bg-sunken) 0% 25%,var(--bg-raised) 0% 50%) 0 0 / 14px 14px;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid var(--line);color:var(--ink-faint);border-radius:var(--radius) var(--radius) 0 0}.pj-thumb img,.pj-thumb video{width:100%;height:100%;object-fit:cover}.pj-open{padding:0 0 10px;gap:0}.pj-body{display:flex;flex-direction:column;gap:5px;padding:12px 16px 0}.pj-list{display:flex;flex-direction:column;gap:8px;margin-top:6px}.pj-list .pj-card{flex-direction:row;align-items:center}.pj-list .pj-open{flex-direction:row;align-items:center;gap:14px;padding:8px 12px}.pj-list .pj-thumb{width:88px;height:54px;flex-shrink:0;border:1px solid var(--line);border-radius:var(--radius)}.pj-list .pj-body{padding:0}.pj-list .pj-name{font-size:16px}.pj-list .pj-actions{padding:0 12px 0 0}.type-modal{width:min(760px,94vw);max-height:84vh;overflow-y:auto;display:flex;flex-direction:column;gap:18px}.type-modal>.btn-ghost{align-self:flex-end;margin-top:6px}.mini-modal{width:min(380px,94vw);display:flex;flex-direction:column;gap:14px}.meta-list{grid-template-columns:1fr;margin:0}.rz-grid{display:flex;align-items:center;gap:8px}.bg-check{display:inline-flex;align-items:center;gap:5px;cursor:pointer;flex-shrink:0}.bg-check input[type=checkbox]{width:13px;height:13px;accent-color:var(--accent)}.vw-pick{display:flex;flex-direction:column;gap:10px;align-items:center;padding:16px;overflow-y:auto;max-height:100%}.frame-modal{width:min(560px,94vw)}.fp-preview{height:240px;margin-bottom:0}.st-note{position:fixed;bottom:18px;left:50%;transform:translate(-50%);z-index:150;box-shadow:var(--shadow);margin:0}.footer-link{display:inline-flex;align-items:center;gap:7px;color:var(--ink-faint);text-decoration:none;transition:color .18s ease}.footer-link:hover{color:var(--accent)}.st-tabs{display:flex;border:1px solid var(--line-strong);border-radius:var(--radius);padding:2px;background:var(--bg-raised)}.st-tabs button{border:0;background:transparent;color:var(--ink-dim);font-family:var(--font-mono);font-size:12px;font-weight:500;padding:5px 14px;border-radius:6px;cursor:pointer;transition:all .18s ease}.st-tabs button.active{background:var(--ink);color:var(--bg)}.media-view{min-width:0}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.media-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);overflow:hidden;transition:border-color .2s ease}.media-card:hover{border-color:var(--ink)}.media-thumb{height:140px;background:repeating-conic-gradient(var(--bg-sunken) 0% 25%,var(--bg-raised) 0% 50%) 0 0 / 16px 16px;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid var(--line)}.media-thumb img,.media-thumb video{max-width:100%;max-height:100%;object-fit:contain}.media-name{font-size:12.5px;font-weight:600;margin:8px 10px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-actions{display:flex;align-items:center;gap:6px;padding:0 10px 10px}.info-i{position:relative;display:inline-grid;place-items:center;width:18px;height:18px;color:var(--ink-faint);cursor:help;border-radius:50%;flex-shrink:0}.info-i:hover,.info-i:focus-visible{color:var(--accent);outline:none}.tip-pop{position:fixed;transform:translate(-50%,-100%);width:max-content;max-width:250px;background:var(--ink);color:var(--bg);font-family:var(--font-body);font-size:11.5px;line-height:1.55;padding:7px 11px;border-radius:7px;z-index:300;white-space:normal;text-align:left;pointer-events:none;box-shadow:var(--shadow);animation:tipIn .15s ease both}@keyframes tipIn{0%{opacity:0;transform:translate(-50%,calc(-100% + 4px))}to{opacity:1;transform:translate(-50%,-100%)}}.footer{border-top:1px solid var(--line);padding:24px 0 32px;text-align:center}.footer p{margin:0;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.05em;color:var(--ink-faint)}.install-card{position:fixed;right:18px;bottom:18px;z-index:95;display:flex;align-items:center;gap:12px;max-width:380px;padding:12px 14px;background:var(--bg);border:1px solid var(--line-strong);border-radius:10px;box-shadow:var(--shadow);animation:rise .3s ease backwards}.install-icon svg{width:38px;height:38px;display:block}.install-text{display:flex;flex-direction:column;gap:2px;min-width:0}.install-text strong{font-family:var(--font-display);font-size:14px}.install-text span{font-size:12px;color:var(--ink-dim)}.install-btns{display:flex;flex-direction:column;gap:6px}.m-tabbar{display:none}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (max-width: 640px){.hero{padding:30px 0 32px}.hero-compact{padding:18px 0}.fc-controls{width:100%;justify-content:flex-end}}@supports (height: 100dvh){.studio{height:calc(100dvh - 96px)}.st-launcher{height:auto;min-height:calc(100dvh - 96px)}.editor{max-height:calc(100dvh - 40px)}.type-modal{max-height:84dvh}}.st-note{bottom:calc(18px + env(safe-area-inset-bottom,0px))}body:has(.editor-overlay),body:has(.drawer-overlay){overflow:hidden}html:has(.editor-overlay),html:has(.drawer-overlay){overflow-y:clip}@media (max-width: 640px){.app{padding:0 16px}.topbar{flex-wrap:wrap;gap:8px 10px;padding:14px 0}.brand-name{font-size:19px}.lang-switch button{padding:5px 9px}.feat{font-size:10px;padding:3px 10px}.workbench{padding-top:16px}.dropzone{padding:30px 16px}.dz-title{font-size:18px}.bb-actions{width:100%}.bb-actions .btn{flex:1 1 auto;justify-content:center}.file-card{padding:13px 14px}.fc-target{display:none}.fc-chips{display:flex;align-items:center;gap:6px;width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding:2px 0}.fc-chips-label{font-size:12px;color:var(--ink-faint);flex:none}.fc-chip{flex:none;padding:8px 13px;border:1px solid var(--line-strong);border-radius:6px;background:var(--bg-raised);color:var(--ink-dim);font-family:var(--font-mono);font-size:12px;letter-spacing:.03em;cursor:pointer}.fc-chip.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.fc-chip:disabled{opacity:.5;cursor:not-allowed}.fc-controls>.btn{flex:1 1 auto;justify-content:center}.fc-details{grid-template-columns:1fr}.fc-quality input[type=range]{max-width:none}.editor-overlay{padding:0}.editor-overlay>.editor{width:100%;max-height:100vh;max-height:100dvh;border-radius:0;border-left:none;border-right:none;padding:14px 16px calc(18px + env(safe-area-inset-bottom,0px))}.media-preview.mp-video{height:34vh}.ie-viewport,.ie-canvas,.ie-overlay{max-height:44vh}.layers-panel{max-height:240px}.fp-preview{height:180px}.ed-toolbar,.gif-transport{flex-wrap:wrap}.drawer-overlay{z-index:90}.drawer{z-index:91;width:100%;border-left:0;display:flex;flex-direction:column;overflow:hidden;padding:max(14px,env(safe-area-inset-top)) 0 0}.drawer-head{flex-shrink:0;margin:0 18px;padding:4px 0 12px}.drawer .settings-panel{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 18px 10px}.drawer-bottom-close{flex-shrink:0;width:auto;margin:10px 18px calc(76px + env(safe-area-inset-bottom,0px))}.matrix{padding:26px 0 40px}.matrix-title{font-size:22px}.app.studio-mode{padding:0 12px}.st-name{max-width:150px;font-size:16px}.st-tabs button{padding:5px 10px}.media-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.pj-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.vw-preview{height:26vh}.gif-preview canvas{max-height:40vh}.picker-panel{padding:18px 16px}.ed-input,.cp-hex,.num-sm,.size-field input,.gif-delay input[type=number],.fc-target select,.sp-field select,.tb-select{font-size:16px}.footer{padding:18px 0 26px}.studio-toggle{display:none}.m-tabbar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:95;background:var(--bg);border-top:1px solid var(--line-strong);padding:6px 10px calc(6px + env(safe-area-inset-bottom,0px))}.m-tabbar button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 0;background:none;border:none;cursor:pointer;color:var(--ink-faint);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.03em}.m-tabbar button.active{color:var(--accent)}.app,.app.studio-mode{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}.st-note{bottom:calc(74px + env(safe-area-inset-bottom,0px))}.install-card{left:12px;right:12px;max-width:none;bottom:calc(74px + env(safe-area-inset-bottom,0px))}}@media (display-mode: standalone){.footer{display:none}.topbar{padding-top:calc(22px + env(safe-area-inset-top,0px))}}@media (display-mode: standalone) and (max-width: 640px){.topbar{padding-top:calc(14px + env(safe-area-inset-top,0px))}}@media (max-width: 400px){.app{padding:0 12px}.hero-title{font-size:34px}.lang-switch button{padding:5px 7px}}@media (max-width: 760px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.studio{height:auto;min-height:calc(100vh - 96px);min-height:calc(100dvh - 96px)}.st-assets{max-height:30vh}.editor.ie-inline .ie-viewport{height:42vh}.editor.ie-inline .layers-panel{max-height:32vh;overflow-y:auto}.editor.ie-inline:has(.ie-layout){display:grid;grid-template-columns:50px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto auto;grid-template-areas:"rail canvas" "rail options" "foot foot";position:relative}.editor.ie-inline:has(.ie-layout) .ed-toolbar{grid-area:rail;flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;margin:0;padding:8px 0 26px;border-right:1px solid var(--line);position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 22px),rgba(0,0,0,.1));mask-image:linear-gradient(180deg,#000 calc(100% - 22px),#0000001a)}.editor.ie-inline:has(.ie-layout) .tb-sep{width:22px;height:1px;margin:2px 0}.editor.ie-inline:has(.ie-layout) .ie-layout{grid-area:canvas;min-height:0;height:100%}.editor.ie-inline:has(.ie-layout) .ie-vpwrap{height:100%;min-height:0}.editor.ie-inline:has(.ie-layout) .ie-viewport{height:100%;display:flex}.editor.ie-inline:has(.ie-layout) .ie-inner{margin:auto}.editor.ie-inline:has(.ie-layout) .ed-options{grid-area:options;margin:0}.editor.ie-inline:has(.ie-layout) .ed-foot{grid-area:foot;margin-top:8px}.editor.ie-inline:has(.ie-layout) .kbd-hints{display:none}.st-assets-toggle{display:inline-flex}.st-assets.collapsed>:not(.st-assets-head){display:none}.st-assets.collapsed{max-height:none}.st-assets.collapsed .st-assets-head{margin-bottom:0}.editor.ie-inline .ed-foot{margin-top:8px;padding-top:8px}.editor.ie-inline .ed-foot .btn{min-height:34px;padding:6px 14px;font-size:12.5px;flex:none}.st-focus-btn{display:inline-flex}.st-focus-btn.active{color:var(--accent);border-color:var(--accent)}.studio.st-focus{height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;padding:calc(14px + env(safe-area-inset-top,0px)) 0 0}.studio.st-focus .st-bar{padding:0 12px}.studio.st-focus .st-main{padding-bottom:0}.studio.st-focus .split-gutter,.studio.st-focus .type-badge,.studio.st-focus .st-export,.studio.st-focus .st-del{display:none}.studio.st-focus .st-bar{gap:8px}.studio.st-focus .st-assets{animation:none;position:fixed;inset:auto 0 0 0;z-index:130;max-height:68dvh;margin:0;border-radius:14px 14px 0 0;border-bottom:0;background:var(--bg-raised);box-shadow:0 -12px 40px #00000073;transform:translateY(105%);transition:transform .25s ease;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}.studio.st-focus .st-assets:not(.collapsed){transform:none}.studio.st-focus .st-assets.collapsed>:not(.st-assets-head){display:revert}.studio.st-focus .st-assets-toggle{display:none}.studio.st-focus .st-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:129;background:#04060e8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.studio.st-focus .st-fab{display:grid;place-items:center;position:relative;width:38px;height:38px;flex-shrink:0;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--bg-raised);color:var(--ink);cursor:pointer}.studio.st-focus .st-fab.on{border-color:var(--accent);color:var(--accent);box-shadow:var(--glow)}.st-fab-n{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--accent);color:var(--accent-ink);font:700 11px var(--font-mono);line-height:18px;text-align:center}.studio.st-focus .editor.ie-inline .ed-foot{display:none}.studio.st-focus:has(.editor.ie-inline .ed-foot) .st-save{display:inline-flex}.studio.st-focus:has(.editor.ie-inline .ed-foot .btn-accent:disabled) .st-save{opacity:.45;pointer-events:none}.studio.st-focus .st-back-txt,.studio.st-focus .st-bar .opt-spacer{display:none}.studio.st-focus .st-name{flex:1 1 60px;min-width:60px;max-width:none}.studio.st-focus .editor.ie-inline{border:0;border-radius:0;box-shadow:none;padding:4px 10px calc(10px + env(safe-area-inset-bottom,0px))}.studio.st-focus .editor.ie-inline:not(:has(.ie-layout)){overflow-y:auto}.studio.st-focus .editor.ie-inline:has(.ie-layout){padding:0}.studio.st-focus .editor.ie-inline:has(.ie-layout) .ie-viewport{border:0;border-radius:0;padding:10px}.studio.st-focus .editor.ie-inline:has(.ie-layout) .ed-options{border-left:0;border-right:0;border-bottom:0;border-radius:0;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px))}.studio.st-focus .mixer,.studio.st-focus .vw{padding:0 10px calc(4px + env(safe-area-inset-bottom,0px))}.studio.st-focus .vw{overflow-y:auto;overscroll-behavior:contain}.studio.st-focus .editor.ie-inline:has(.gif-preview){overflow:hidden}.studio.st-focus .editor.ie-inline .ed-preview.gif-preview{flex:0 0 auto;height:25vh;min-height:120px;grid-template-rows:100%;overflow:hidden}.studio.st-focus .editor.ie-inline .gif-preview canvas{max-height:100%}.studio.st-focus .editor.ie-inline:has(.gif-preview) .gif-transport{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.studio.st-focus .editor.ie-inline:has(.gif-preview) .gif-transport::-webkit-scrollbar{display:none}.studio.st-focus .editor.ie-inline:has(.gif-preview) .gif-transport>*{flex-shrink:0}.studio.st-focus .editor.ie-inline:has(.gif-preview) .ed-controls{flex:1 1 auto;min-height:0;max-height:none;border-top:1px solid var(--line);padding:8px 10px 4px;overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain;background:linear-gradient(var(--bg) 30%,transparent) top / 100% 26px local,linear-gradient(transparent,var(--bg) 70%) bottom / 100% 26px local,radial-gradient(farthest-side at 50% 0,color-mix(in srgb,var(--accent) 45%,transparent),transparent) top / 100% 12px scroll,radial-gradient(farthest-side at 50% 100%,color-mix(in srgb,var(--accent) 45%,transparent),transparent) bottom / 100% 12px scroll;background-repeat:no-repeat}.studio.st-focus .editor.ie-inline.pdf-editor{overflow:hidden}.studio.st-focus .editor.ie-inline .pdf-body{overflow-y:auto;overscroll-behavior:contain}.studio.st-focus .editor.ie-inline .pdf-grid{max-height:none}body:has(.studio.st-focus) .install-card{display:none}body:has(.studio.st-focus) .topbar,body:has(.studio.st-focus) .m-tabbar,body:has(.studio.st-focus) .footer{display:none}body:has(.studio.st-focus) .app,body:has(.studio.st-focus) .app.studio-mode{padding-left:0;padding-right:0;padding-bottom:0}}@media (max-width: 720px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.lp-fab{display:grid}.lp-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:129;background:#04060f73;animation:fadeIn .2s ease both}.layers-panel,.editor.ie-inline .layers-panel{position:fixed;left:0;right:0;bottom:0;z-index:130;max-height:62vh;max-height:62dvh;overflow-y:auto;margin:0;border:1px solid var(--line-strong);border-bottom:none;border-radius:14px 14px 0 0;box-shadow:0 -12px 40px #00000059;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px));transform:translateY(105%);transition:transform .28s cubic-bezier(.2,.8,.3,1)}.layers-panel.open,.editor.ie-inline .layers-panel.open{transform:none}.layers-panel.open,.editor.ie-inline .layers-panel.open{display:flex;flex-direction:column}.layers-panel.open>*{flex-shrink:0}.layers-panel.open .lp-colour{order:8}.layers-panel.open .lp-hist{order:9}.editor.ie-inline .ie-viewport{height:56vh}}@media (max-width: 640px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.editor-overlay:has(.ie-layout){padding:0}.editor-overlay>.editor:has(.ie-layout){height:100vh;height:100dvh;max-height:none;width:100%;max-width:none;border-radius:0;padding:0;display:grid;grid-template-columns:50px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-areas:"head head" "rail canvas" "rail options" "foot foot";overflow:hidden}.editor-overlay>.editor:has(.ie-layout) .ed-head{grid-area:head;margin:0;padding:max(10px,env(safe-area-inset-top,0px)) 14px 8px}.editor-overlay>.editor:has(.ie-layout) .ed-toolbar{grid-area:rail;flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;margin:0;padding:8px 0 26px;border-right:1px solid var(--line);-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 22px),rgba(0,0,0,.1));mask-image:linear-gradient(180deg,#000 calc(100% - 22px),#0000001a)}.editor-overlay>.editor:has(.ie-layout) .tb-sep{width:22px;height:1px;margin:2px 0}.editor-overlay>.editor:has(.ie-layout) .ie-layout{grid-area:canvas;min-height:0;display:flex;align-items:stretch}.editor-overlay>.editor:has(.ie-layout) .ed-options{grid-area:options;margin:0;border-radius:0;border-left:none;border-right:none}.editor-overlay>.editor:has(.ie-layout) .ed-foot{grid-area:foot;margin:0;padding:8px 14px calc(8px + env(safe-area-inset-bottom,0px))}.editor-overlay>.editor:has(.ie-layout) .ie-gutter{display:none}.editor-overlay>.editor:has(.ie-layout) .ie-vpwrap{flex:1;min-width:0;min-height:0}.editor-overlay>.editor:has(.ie-layout) .ie-viewport{height:100%;max-height:none;display:flex}.editor-overlay>.editor:has(.ie-layout) .ie-inner{margin:auto}.editor-overlay>.editor:has(.ie-layout) .kbd-hints{display:none}}@media (max-width: 640px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.editor-overlay:has(.gif-preview),.editor-overlay:has(.mp-video){padding:0}.editor-overlay>.editor:has(.gif-preview),.editor-overlay>.editor:has(.mp-video){height:100vh;height:100dvh;max-height:none;width:100%;max-width:none;border-radius:0;display:flex;flex-direction:column;overflow:hidden}.editor-overlay>.editor:has(.gif-preview)>*,.editor-overlay>.editor:has(.mp-video)>*{flex-shrink:0}.editor-overlay>.editor:has(.gif-preview) .ed-preview.gif-preview{flex:1 1 auto;min-height:120px;margin-bottom:10px;grid-template-rows:100%;overflow:hidden}.editor-overlay>.editor:has(.gif-preview) .gif-preview canvas{max-height:100%}.editor-overlay>.editor:has(.mp-video) .media-preview.mp-video{flex:1 1 auto;height:auto;min-height:160px;margin-bottom:10px}.editor-overlay>.editor:has(.gif-preview) .ed-controls,.editor-overlay>.editor:has(.mp-video) .ed-controls{flex:0 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.editor-overlay>.editor:has(.gif-preview) .ed-controls{max-height:26vh}.editor-overlay>.editor:has(.mp-video) .ed-controls{max-height:44vh}.editor-overlay>.editor:has(.gif-preview) .ed-foot,.editor-overlay>.editor:has(.mp-video) .ed-foot{margin-top:8px;padding-top:8px}}@media (max-width: 760px),(max-height: 540px),(pointer: coarse) and (max-width: 920px){.pdf-tools,.mixer .gif-transport,.doc-tools,.doc-mdbar{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.pdf-tools::-webkit-scrollbar,.mixer .gif-transport::-webkit-scrollbar,.doc-tools::-webkit-scrollbar,.doc-mdbar::-webkit-scrollbar{display:none}.pdf-tools>*,.mixer .gif-transport>*,.doc-tools>*,.doc-mdbar>*{flex-shrink:0}.ed-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px 12px}.md-pop{position:fixed;inset:auto 12px calc(84px + env(safe-area-inset-bottom,0px)) 12px;top:auto;z-index:140}.md-pop-qr{width:auto}.vw-tabs{display:inline-flex}.vw.vw-pane-video .mixer,.vw.vw-pane-video .split-gutter.h,.vw.vw-pane-audio .vw-top{display:none}.mixer .trk-head:not(.tl-corner){height:72px;overflow:hidden;padding:5px 8px;gap:2px}.mixer .trk-name{padding:0 4px}.mixer .trk-btns button{width:26px;height:18px}.mixer .trk-gain{height:16px;margin:0}}@media (hover: none){.lp-actions{opacity:1}.clip-edge{background:var(--accent-soft)}.kbd-hints,.dz-kbd,.zf-xy{display:none}}@media (pointer: coarse){.tool-btn{width:40px;height:40px}.zoom-ctrl .tool-btn{width:32px;height:32px}.tb-color{width:38px;height:38px}.dual-track{height:34px}.dual-handle{width:22px;height:22px}.swatches{grid-template-columns:repeat(5,18px);grid-auto-rows:18px}.swatch{width:18px;height:18px}.lp-mask-btns button,.lp-actions button{width:27px;height:27px}.lp-ops button{padding:8px 2px}.trk-btns button{width:30px;height:24px}.clip-edge{width:14px}.asset-btns button{font-size:15px;padding:4px 7px}.thumb img{height:56px}.btn{min-height:40px}.btn-sm{min-height:36px}.tl-scroll,.ie-viewport,.strip,.layers-panel,.editor{overscroll-behavior:contain}.ed-options,.ed-toolbar,.gif-transport{overscroll-behavior-x:contain}.ed-options{scrollbar-width:none}.ed-options::-webkit-scrollbar{display:none}}button{-webkit-tap-highlight-color:transparent}.btn:active:not(:disabled),.tool-btn:active:not(:disabled),.theme-toggle:active,.studio-toggle:active,.lang-switch button:active,.st-tabs button:active,.trk-btns button:active,.asset-btns button:active,.layer-btns button:active{transform:translateY(1px) scale(.97);transition-duration:.06s}.pj-card:active{transform:translateY(-1px) scale(.99)}.btn:focus-visible,.tool-btn:focus-visible,.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.asset-row{transition:background .15s ease;border-radius:6px}.asset-row:hover{background:var(--panel)}.asset-draggable{cursor:grab}.asset-draggable:active{cursor:grabbing}.st-main.drop-hot{outline:2px dashed var(--accent);outline-offset:-4px;border-radius:var(--radius-lg);background:var(--accent-soft)}.thumb:hover:not(.active){border-color:var(--ink)}.editor-overlay>.editor{animation:modalPop .24s cubic-bezier(.2,.9,.3,1.15) backwards}@keyframes modalPop{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:none}}.dropzone{transition:border-color .2s ease,background .2s ease,transform .2s ease}.dropzone.over{transform:scale(1.006)}select,.tb-select,.fc-target select,.sp-field select{transition:border-color .18s ease,box-shadow .18s ease}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
