@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/app/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--panel:#fbfaf8;--canvas:#f1efec;--dot:#dcd8d2;--frame:#fefdfc;--input:#f2f0ed;--border:#e6e3de;--border-2:#dedad4;--border-3:#d6d1ca;--hover:#f1efec;--active:#e9e6e1;--active-2:#e1ddd7;--text:#1e1c1a;--text-2:#383532;--text-3:#57534e;--muted:#78736c;--faint:#9a958e;--faint-2:#b3aea7;--accent:#3d7bf2;--accent-label:#2563d9;--ok:#2f9e66;--row:#f2f0ed;--popover:#fefdfc;--dialog:#fefdfc;--code-bg:#f2f0ed;--code-text:#383532;--key-text:#57534e;--frame-key:#e1ddd7;--frame-key-text:#383532;--stripe-a:#edeae6;--stripe-b:#e5e2dd;--strong:#1e1c1a;--invert:#1e1c1a;--invert-hover:#000;--invert-text:#fff;--num:#1e1c1a;--num-text:#fff;--btn-hover:#d6d1ca;--danger:#c2412d;--warn-text:#a8650a;--backdrop:#24201c40;--shadow-frame:0 1px 2px #2e2a260a, 0 8px 24px #2e2a260f;--shadow-pop:0 1px 2px #2e2a260d, 0 12px 32px #2e2a261f;--shadow-dialog:0 2px 6px #2e2a260f, 0 30px 70px #2e2a262e;--card:#fdfcfb;--card-ring:0 0 0 1px #e6e3de;--shadow-card:0 1px 2px #2e2a260a, 0 6px 18px #2e2a260d;--field:#fdfcfb;--field-border:#e3e0db;--btn:#fdfcfb;--btn-ring:0 0 0 1px #dedad4, 0 1px 2px #2e2a2614;--tile-ring:0 0 0 1px #e3e0db, 0 2px 8px #2e2a260f;--primary:linear-gradient(#45403b, #35312d);--primary-hover:brightness(.85);--primary-text:#fbfaf8;--primary-ring:0 0 0 1px #2a2724, inset 0 1px 0 #ffffff12, 0 1px 2px #2e2a2633, 0 4px 10px #2e2a2626;--shadow-lift:#2e2a2640;--sans:"Geist Variable", system-ui, -apple-system, "SF Pro Text", "Segoe UI", sans-serif;--mono:"Geist Mono Variable", ui-monospace, Menlo, monospace;font:12.5px/1.4 var(--sans);-webkit-font-smoothing:antialiased}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--panel:#1c1b19;--canvas:#161513;--dot:#2b2927;--frame:#211f1d;--input:#252321;--border:#2d2b28;--border-2:#34312e;--border-3:#3c3935;--hover:#252321;--active:#2c2a27;--active-2:#34312e;--text:#efedea;--text-2:#d8d5d0;--text-3:#b5b1ab;--muted:#918c85;--faint:#716d67;--faint-2:#57534e;--accent:#4b8bff;--accent-label:#93b8ff;--ok:#4cc38a;--row:#242220;--popover:#24221f;--dialog:#1f1d1b;--code-bg:#171614;--code-text:#d8d5d0;--key-text:#b5b1ab;--frame-key:#34312e;--frame-key-text:#efedea;--stripe-a:#22201e;--stripe-b:#282624;--strong:#fff;--invert:#efedea;--invert-hover:#fff;--invert-text:#1a1918;--num:#e8e5e1;--num-text:#1a1918;--btn-hover:#34312e;--danger:#ff8a7a;--warn-text:#f0b35c;--backdrop:#000000a6;--shadow-frame:inset 0 1px 0 #ffffff08, 0 1px 2px #00000080, 0 10px 30px #00000059;--shadow-pop:inset 0 1px 0 #ffffff0a, 0 1px 2px #00000080, 0 16px 40px #000000a6;--shadow-dialog:inset 0 1px 0 #ffffff0a, 0 2px 8px #00000080, 0 30px 80px #000000bf;--card:#23211f;--card-ring:0 0 0 1px #302d2a, inset 0 1px 0 #ffffff08;--shadow-card:0 1px 2px #00000073, 0 6px 18px #00000059;--field:#1a1917;--field-border:#34312d;--btn:#2a2825;--btn-ring:0 0 0 1px #3a3733, inset 0 1px 0 #ffffff0f, 0 1px 2px #00000080;--tile-ring:0 0 0 1px #2f2c29, 0 2px 8px #0006;--primary:linear-gradient(#f5f3f0, #dcd8d2);--primary-hover:brightness(.93);--primary-text:#1e1c1a;--primary-ring:0 0 0 1px #000000b3, inset 0 1px 0 #ffffffb3, 0 1px 2px #00000080, 0 4px 12px #0006;--shadow-lift:#000c}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--panel);color:var(--text);overflow:hidden}::selection{background:color-mix(in srgb, var(--accent) 33%, transparent)}button{all:unset;cursor:pointer}.app{grid-template-columns:clamp(190px,17vw,240px) minmax(0,1fr) clamp(220px,19vw,268px);height:100vh;display:grid}.ellipsis{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.grow{flex:1}.ml-auto{margin-left:auto}.muted{color:var(--muted)}.faint{color:var(--faint)}.lh{line-height:1.45}.pt4{padding-top:4px}.sec-title{font-weight:600}.count{color:var(--faint);font-size:11px}.key{background:var(--border);min-width:16px;height:16px;color:var(--key-text);border-radius:4px;justify-content:center;align-items:center;font-size:10px;display:flex}.field{background:var(--field);border:1px solid var(--field-border);width:100%;color:var(--text);font:inherit;border-radius:7px;outline:none;padding:6px 8px;font-size:12px}.field:focus{border-color:var(--accent)}.stripes{background:var(--stripe-a) radial-gradient(circle, var(--dot) .9px, transparent 1.1px) 0 0 / 12px 12px}.img{background-position:top;background-size:cover;position:absolute;inset:0}.sidebar{border-right:1px solid var(--border);flex-direction:column;min-height:0;display:flex}.sb-head{align-items:center;gap:8px;padding:12px 12px 10px;display:flex}.mark{flex:none;width:17px;height:17px;margin:0 1px 0 0}.mark path{fill:var(--text)}.mark circle{fill:#3d8bfd}.app-name{font-size:13px;font-weight:600}.ver{color:var(--faint);margin-left:auto;font-size:11px}.sb-search{border-bottom:1px solid var(--border);padding:0 8px 10px}.sec-head{align-items:center;gap:6px;padding:10px 12px 6px;display:flex}.sec-head .hint{color:var(--faint);white-space:nowrap;margin-left:auto;font-size:11px}.icon-btn{width:20px;height:20px;color:var(--text-3);border-radius:4px;justify-content:center;align-items:center;margin-left:auto;font-size:15px;display:flex}.icon-btn:hover{background:var(--hover)}.rows{border-bottom:1px solid var(--border);flex-direction:column;padding:0 4px 8px;display:flex}.rows.capped{overscroll-behavior:contain;scrollbar-width:thin;flex:none;scroll-padding:4px 0;overflow-y:auto}.projects-rows{max-height:min(152px,19vh)}.groups-rows{max-height:min(236px,29vh)}.row{border-radius:7px;align-items:center;gap:8px;padding:5px 8px;display:flex}.row:hover{background:var(--hover)}.row.active{background:var(--active)}.row-input{margin:0;padding:4px 7px}.inbox-head{padding-bottom:4px}.inbox{flex:1;min-height:0;padding:4px 12px 12px;scroll-padding:4px 0;overflow:auto}.empty{color:var(--faint);margin:0;padding:16px 0;line-height:1.5}.inbox-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ib-item{cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;gap:4px;min-width:0;display:flex}.ib-tile{aspect-ratio:4/3;box-shadow:var(--tile-ring);border-radius:7px;position:relative;overflow:hidden}.ib-tile.sel{box-shadow:0 0 0 1.5px var(--accent)}.ib-cap{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.3;overflow:hidden}.ib-cap.sel{color:var(--text)}.ib-item.converting{cursor:default}.sb-foot{border-top:1px solid var(--border);color:var(--faint);white-space:nowrap;align-items:center;gap:6px;padding:10px 12px;font-size:11px;display:flex;overflow:hidden}.dot{background:var(--ok);border-radius:50%;flex:none;width:6px;height:6px}.dot.off{background:var(--faint-2)}.rail{border-right:1px solid var(--border);flex-direction:column;align-items:center;gap:4px;padding:6px 0;display:flex}.tool{border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.tool:hover{background:var(--hover)}.tool.on{background:var(--active-2)}.tool.pin-on{background:var(--accent)}.rail-div{background:var(--border);width:20px;height:1px;margin:4px 0}.canvas{background:var(--canvas);touch-action:none;-webkit-user-select:none;user-select:none;background-image:radial-gradient(circle, var(--dot) .9px, transparent 1.1px);background-size:var(--grid-step,18px) var(--grid-step,18px);background-position:var(--grid-x,0) var(--grid-y,0);min-width:0;position:relative;overflow:hidden}.layer{transform-origin:0 0;position:absolute;top:0;left:0}.frame-wrap{flex-direction:column;gap:6px;display:flex;position:absolute}.frame-label{color:var(--muted);cursor:default;align-items:center;gap:6px;font-size:12px;display:flex}.frame-label.sel{color:var(--accent-label)}.frame-key{background:var(--frame-key);min-width:15px;height:15px;color:var(--frame-key-text);border-radius:3px;justify-content:center;align-items:center;font-size:10px;display:flex}.frame-label.sel .frame-key{background:var(--accent);color:#fff}.frame{background:var(--frame);outline:1px solid var(--border);width:430px;box-shadow:var(--shadow-frame);border-radius:12px;position:relative}.frame.sel{outline:1.5px solid var(--accent)}.frame-grid{grid-template-columns:repeat(2,200px);align-items:start;gap:10px;padding:10px;display:grid}.frame-tile{border-radius:6px;width:200px;position:relative;overflow:hidden}.frame-tile .img{background-size:100% 100%}.frame-empty{border:1px dashed var(--border-3);height:120px;color:var(--faint);border-radius:6px;grid-column:1/-1;justify-content:center;align-items:center;font-size:12px;display:flex}.frame-intent{color:var(--muted);white-space:nowrap;gap:14px;padding:0 10px 10px;font-size:11px;display:flex;overflow:hidden}.frame-intent .lbl{color:var(--faint-2)}.frame-pill{background:var(--accent);color:#fff;white-space:nowrap;border-radius:4px;padding:2px 7px;font-size:11px;position:absolute;top:100%;left:50%;transform:translate(-50%,8px)}.canvas-empty{color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.canvas-empty b{color:var(--strong);font-weight:600}.toast{background:var(--invert);color:var(--invert-text);box-shadow:var(--shadow-pop);white-space:nowrap;pointer-events:none;border-radius:8px;padding:7px 12px;font-size:12px;font-weight:500;position:absolute;top:16px;left:50%;transform:translate(-50%)}.inspector{border-left:1px solid var(--border);flex-direction:column;min-height:0;display:flex;overflow:auto}.ins-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 10px;display:flex}.zoom-btn{color:var(--text-3);border-radius:5px;margin-left:auto;padding:4px 6px;font-size:12px}.zoom-btn:hover{background:var(--hover)}.primary{background:var(--primary);color:var(--primary-text);box-shadow:var(--primary-ring);white-space:nowrap;border-radius:5px;padding:5px 11px;font-size:12px;font-weight:600}.primary:hover{filter:var(--primary-hover)}.ins-sec{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding:12px 12px 14px;display:flex}.ins-sec.last{border-bottom:0;gap:6px}.ins-row{align-items:center;gap:6px;display:flex}.ins-sec .label{color:var(--muted);font-size:11px}.ins-preview{aspect-ratio:4/3;border-radius:6px;position:relative;overflow:hidden}.ins-preview .img{background-position:50%;background-repeat:no-repeat;background-size:contain}.ins-img{align-items:center;gap:8px;min-width:0;display:flex}.ins-img .n{color:var(--faint);flex:none;width:12px;font-size:11px}.ins-img .thumb{background:var(--stripe-b) top center / cover;border-radius:3px;flex:none;width:32px;height:24px}.ins-img .grow{color:var(--text-2);font-size:12px}.stat{color:var(--muted);justify-content:space-between;display:flex}.stat span:last-child{color:var(--text)}.keys{color:var(--muted);grid-template-columns:44px 1fr;gap:7px 8px;padding:12px;font-size:12px;display:grid}.keys-title{color:var(--text);grid-column:1/-1;padding-bottom:2px;font-weight:600}.keys .k{color:var(--text)}.sb-foot-wrap{border-top:1px solid var(--border);position:relative}.sb-foot-wrap .sb-foot{box-sizing:border-box;border-top:0;width:100%}.sb-foot-wrap .sb-foot:hover{background:var(--hover);color:var(--text-3)}.dot.warn{background:#f59e0b}.menu{z-index:10;background:var(--popover);border:1px solid var(--border);box-shadow:var(--shadow-pop);border-radius:10px;flex-direction:column;padding:4px;display:flex;position:absolute;bottom:calc(100% + 4px);left:8px;right:8px}.menu-row{border-radius:5px;padding:6px 8px;font-size:12px}.menu-row:hover{background:var(--hover)}a.menu-row{color:inherit;text-decoration:none;display:block}.menu-note{color:var(--muted);border-bottom:1px solid var(--border);margin-bottom:4px;padding:6px 8px 8px;font-size:11px;line-height:1.45}.hint-bar{background:var(--popover);border:1px solid var(--border);box-shadow:var(--shadow-pop);color:var(--text-3);white-space:nowrap;pointer-events:none;border-radius:10px;align-items:center;gap:14px;padding:7px 12px;font-size:12px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.hint-bar b{color:var(--strong);font-weight:600}.file-into{gap:2px}.pb6{padding-bottom:6px}.file-row{border-radius:5px;align-items:center;gap:8px;margin:0 -8px;padding:6px 8px;display:flex}.file-row:hover{background:var(--hover)}.file-row.discard{color:var(--muted);margin-top:6px}.file-row.discard:hover{color:var(--text)}.frame.has-sel{outline:1px solid color-mix(in srgb, var(--accent) 50%, transparent)}.frame-tile.sel{outline:2px solid var(--accent)}.label-input{border-radius:4px;width:220px;padding:1px 5px;font-size:12px}.field.notes{resize:none;line-height:1.45}.field::placeholder{color:var(--faint-2)}.ins-img.clickable{cursor:pointer;border-radius:4px;margin:0 -4px;padding:2px 4px}.ins-img.clickable:hover{background:var(--hover)}.mini-btn{width:18px;height:18px;color:var(--faint);border-radius:4px;flex:none;justify-content:center;align-items:center;display:flex}.mini-btn:hover{background:var(--active);color:var(--text)}.file-row.danger{color:var(--muted)}.file-row.danger:hover{color:var(--danger)}.file-row.danger>span:first-child{white-space:nowrap}.file-row.danger>.ml-auto{text-align:right}.primary:disabled{opacity:.45;cursor:default}.primary:disabled:hover{filter:none}.backdrop{background:var(--backdrop);z-index:20;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--dialog);border:1px solid var(--border);width:min(880px,94vw);height:min(620px,90vh);box-shadow:var(--shadow-dialog);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.dlg-head{border-bottom:1px solid var(--border);align-items:baseline;gap:10px;padding:18px 22px;display:flex}.dlg-title{font-size:18px;font-weight:500}.dlg-sum{color:var(--faint);font-size:12px}.dlg-body{flex:1;grid-template-columns:180px minmax(0,1fr);min-height:0;display:grid}.targets{border-right:1px solid var(--border);flex-direction:column;gap:2px;padding:8px;display:flex}.target{color:var(--text-2);border-radius:6px;align-items:center;gap:10px;padding:7px 8px;display:flex}.target:hover{background:var(--hover)}.target.on{background:var(--active);color:var(--text)}.glyph{background:var(--border-3);width:18px;height:18px;color:var(--text);border-radius:5px;flex:none;justify-content:center;align-items:center;font-size:9px;font-weight:600;display:flex}.steps{flex-direction:column;gap:22px;padding:22px 24px;display:flex;overflow:auto}.step{grid-template-columns:22px 1fr;gap:10px;display:grid}.num{background:var(--num);width:20px;height:20px;color:var(--num-text);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.step-title{align-self:center;font-size:13.5px;font-weight:500}.step-col{flex-direction:column;gap:8px;min-width:0;display:flex}.field.task{background:var(--field);resize:none;border-radius:8px;padding:10px 12px;font-size:13px}.dlg-row{background:var(--row);border-radius:8px;align-items:center;gap:12px;min-width:0;padding:12px 14px;display:flex}.muted-2{color:var(--text-2)}.prompt{-webkit-user-select:text;user-select:text;line-height:1.45}.dlg-btn{background:var(--btn);box-shadow:var(--btn-ring);white-space:nowrap;border-radius:7px;flex:none;padding:5px 10px;font-size:12.5px}.dlg-btn:hover{background:var(--btn-hover)}.dlg-btn:disabled{opacity:.5;cursor:default}.dlg-toggle{border:1px solid var(--border);color:var(--muted);border-radius:8px;justify-content:space-between;padding:10px 14px;display:flex}.dlg-toggle:hover{background:var(--hover)}.brief{background:var(--code-bg);color:var(--code-text);font-family:var(--mono);white-space:pre-wrap;-webkit-user-select:text;user-select:text;border-radius:8px;margin:0;padding:12px 14px;font-size:11.5px;line-height:1.55}.strip{flex:1;gap:6px;min-width:0;display:flex;overflow:hidden}.strip-tile{background:var(--border-3) top center / cover;border-radius:3px;flex:none;width:56px;height:40px;position:relative;overflow:hidden}.strip-tile span{color:#111;background:#ececec;padding:0 4px;font-size:9px;font-weight:700;position:absolute;top:0;left:0}.dlg-error{color:var(--danger)}.dlg-foot{border-top:1px solid var(--border);align-items:center;gap:12px;padding:12px 16px 12px 22px;font-size:12px;display:flex}.done{background:var(--primary);color:var(--primary-text);box-shadow:var(--primary-ring);border-radius:6px;padding:7px 18px;font-weight:500}.done:hover{filter:var(--primary-hover)}.tile-btn{z-index:2;background:#000b;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;display:none;position:absolute;top:6px}.tile-btn:hover{background:#000}.copy-btn{left:6px}.discard-btn{opacity:.75;background:#0008;border-radius:50%;width:20px;height:20px;right:6px}.discard-btn:hover{opacity:1;background:#c0392b}.frame-tile:hover .tile-btn,.ib-tile:hover .tile-btn{display:flex}.ib-tile .tile-btn{top:4px}.ib-tile .copy-btn{width:22px;height:22px;left:4px}.ib-tile .discard-btn{width:18px;height:18px;right:4px}body.dragging-image .tile-btn{display:none!important}.frame-pill{border-radius:6px}.frame-key,.ins-img .thumb,.strip-tile{border-radius:4px}.frame-tile.miss,.ib-item.miss{opacity:.18}.frame-wrap.miss{opacity:.35}.row.miss{opacity:.4}.motion-badge{z-index:1;color:#fff;letter-spacing:.02em;pointer-events:none;background:#000b;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:600;position:absolute;bottom:6px;left:6px}.ib-tile .motion-badge{padding:0 4px;font-size:9px;bottom:4px;left:4px}.preview-img{object-fit:contain;cursor:grab;width:100%;height:100%;position:absolute;inset:0}.sheet-thumb{object-fit:cover;object-position:top;cursor:grab;background:var(--border-3);border-radius:4px;flex:none;max-width:96px;height:44px}.sheet-info{flex-direction:column;gap:2px;min-width:0;display:flex}.warn-text{color:var(--warn-text)}.frame-wrap{transition:left .18s,top .18s}.frame-wrap.lifted{z-index:5;filter:drop-shadow(0 12px 24px var(--shadow-lift));transition:none}.frame.drop-target{outline:1.5px dashed var(--accent)}.frame-tile.drag-origin,.ib-item.drag-origin{opacity:.3}.frame-tile.drop-before:before,.frame-tile.drop-after:after{content:"";background:var(--accent);z-index:3;border-radius:2px;width:3px;position:absolute;top:0;bottom:0}.frame-tile{overflow:visible}.frame-tile>.img{border-radius:6px;overflow:hidden}.frame-tile.drop-before:before{left:-7px}.frame-tile.drop-after:after{right:-7px}.row.drop-row{background:color-mix(in srgb, var(--accent) 20%, transparent);box-shadow:inset 0 0 0 1px var(--accent)}.inbox.drop-inbox{background:color-mix(in srgb, var(--accent) 8%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 40%, transparent)}.drag-ghost{z-index:50;pointer-events:none;width:96px;height:72px;box-shadow:0 0 0 1.5px var(--accent), 0 12px 28px var(--shadow-lift);background:var(--input);border-radius:6px;margin:-36px 0 0 -48px;position:fixed;overflow:hidden;transform:rotate(-2deg)}.drag-ghost.no-target{box-shadow:0 0 0 1px var(--border-3), 0 12px 28px var(--shadow-lift);opacity:.85}.drag-ghost .img{background-position:top;background-size:cover}body.dragging-image,body.dragging-image *{cursor:grabbing!important}.dialog.setup{width:min(640px,94vw);height:auto;max-height:90vh}.setup-body{flex-direction:column;gap:10px;padding:26px 26px 22px;display:flex;overflow:auto}.setup-head{align-items:flex-start;gap:14px;padding-bottom:14px;display:flex}.setup-head img{border-radius:9px;flex:none;margin-top:2px}.setup-head h1{letter-spacing:-.01em;margin:0 0 6px;font-size:20px;font-weight:600}.setup-head.small h1{margin:0;font-size:18px;font-weight:500}.setup-head p{color:var(--text-3);max-width:50ch;margin:0;font-size:13px;line-height:1.5}.setup-label{flex-wrap:wrap;align-items:baseline;gap:10px;padding:4px 0 2px;font-size:13px;font-weight:600;display:flex}.setup-label .faint{font-size:12px;font-weight:400}.cap-card{background:var(--card);box-shadow:var(--card-ring), var(--shadow-card);border-radius:12px;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px;display:grid}.cap-icon{background:var(--border-3);border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.cap-text{flex-direction:column;gap:4px;min-width:0;display:flex}.cap-text p{color:var(--text-3);margin:0;font-size:12.5px;line-height:1.5}.cap-title{align-items:center;gap:8px;font-size:13.5px;font-weight:500;display:flex}.pill{color:var(--accent-label);background:color-mix(in srgb, var(--accent) 14%, transparent);border-radius:999px;padding:1px 7px;font-size:10.5px;font-weight:500}.cap-steps{color:var(--text-2);flex-direction:column;gap:3px;margin:6px 0 0;padding-left:18px;font-size:12.5px;line-height:1.55;display:flex}.cap-steps b{color:var(--text);font-weight:600}.cap-action{align-self:center;align-items:center;display:flex}.cap-action a.dlg-btn{color:var(--text);cursor:pointer;text-decoration:none}.cap-ok{color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;display:flex}.cap-ok .link{margin-left:6px}.kbd{font-family:var(--sans);background:var(--border-3);color:var(--text);white-space:nowrap;border-radius:4px;padding:0 5px;font-size:11.5px}.link{color:var(--muted);border-radius:5px;padding:4px 6px;font-size:12px}.link:hover{color:var(--text);background:var(--hover)}.dock-tip{background:var(--card);box-shadow:var(--card-ring), var(--shadow-card);color:var(--text-3);border-radius:10px;flex-direction:column;gap:6px;margin:8px;padding:10px 12px;font-size:12px;line-height:1.45;display:flex}.dock-tip b{color:var(--text);font-weight:600}.dock-tip .row{justify-content:flex-end;display:flex}@media (width<=560px){.cap-card{grid-template-columns:30px minmax(0,1fr)}.cap-action{grid-column:2;justify-self:start}}.inline-link{color:var(--accent-label);cursor:pointer}.inline-link:hover{text-decoration:underline}.kbd.big{padding:1px 6px;font-size:12px}.img-notes{flex-direction:column;gap:2px;display:flex}.img-note{color:var(--text-2);border-radius:5px;gap:6px;margin:0 -6px;padding:3px 6px;font-size:12px;line-height:1.4;display:flex}.img-note:hover{background:var(--hover)}.img-note .n{color:var(--faint);font-variant-numeric:tabular-nums;flex:none}.note-badge{color:#111;z-index:1;background:#ececec;border-radius:5px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;font-weight:700;display:flex;position:absolute;bottom:6px;right:6px;box-shadow:0 1px 3px #0006}.frame-intent .note-count{color:var(--faint);flex:none;margin-left:auto}.canvas.drop-new{box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--accent) 40%, transparent);background-color:color-mix(in srgb, var(--accent) 4%, var(--canvas))}.drop-new-hint{z-index:5;pointer-events:none;background:var(--accent);color:#fff;box-shadow:var(--shadow-pop);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:500;position:absolute;bottom:64px;left:50%;transform:translate(-50%)}.dlg-row .dot{background:var(--ok);border-radius:50%;flex:none;width:7px;height:7px}.dlg-row .dot.off{background:var(--faint-2)}.cmd-row{background:var(--code-bg)}.cmd-row code{font:12px/1.5 var(--mono);color:var(--code-text)}.prompt-chips{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.chip{border:1px solid var(--border-3);color:var(--text-2);border-radius:999px;align-items:center;gap:8px;max-width:100%;padding:6px 12px;font-size:12.5px;display:flex}.chip:hover{background:var(--row);color:var(--text)}.chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cap-cmd{background:var(--code-bg);font:11.5px/1.5 var(--mono);color:var(--code-text);white-space:nowrap;border-radius:6px;margin-top:6px;padding:7px 10px;display:block;overflow-x:auto}.theme-btn{width:22px;height:22px;color:var(--muted);border-radius:5px;justify-content:center;align-items:center;margin-left:4px;display:flex}.theme-btn:hover{background:var(--hover);color:var(--text)}.primary,.done,.dialog :is(button,a,.target,.chip,.dlg-btn,.dlg-toggle,.link,.field){transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s,filter .18s,opacity .18s}.mark-pin,.mark-box{z-index:2;pointer-events:none;position:absolute}.mark-pin{background:var(--accent);width:12px;height:12px;transform:scale(var(--iz,1));border-radius:50%;margin:-6px 0 0 -6px;box-shadow:0 0 0 2px #fff,0 1px 4px #0006}.mark-box{border:calc(2px * var(--iz,1)) solid var(--accent);border-radius:calc(3px * var(--iz,1));box-shadow:0 0 0 calc(1px * var(--iz,1)) #fff, inset 0 0 0 calc(1px * var(--iz,1)) #fff8}.mark-box.draft{background:color-mix(in srgb, var(--accent) 10%, transparent);border-style:dashed}.mark-tag{background:var(--accent);color:#fff;white-space:nowrap;border-radius:4px;height:16px;margin-left:4px;padding:0 5px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:50%;left:100%;transform:translateY(-50%);box-shadow:0 0 0 1.5px #fff}.mark-pin .mark-tag{transform:translateY(-50%)}.mark-box>.mark-tag{transform:translateY(-115%) scale(var(--iz,1));transform-origin:0 100%;margin:0;top:0;left:0}.mark-pin.hot,.mark-box.hot{z-index:3}.mark-pin.hot{box-shadow:0 0 0 2px #fff, 0 0 0 6px color-mix(in srgb, var(--accent) 35%, transparent)}.mark-box.hot{background:color-mix(in srgb, var(--accent) 14%, transparent)}.mark-tag.static{box-shadow:none;flex:none;margin:0;position:static;transform:none}.marks{flex-direction:column;gap:6px;display:flex}.mark-row{align-items:center;gap:6px;display:flex}.mark-row .field{padding:4px 7px}.canvas.marking .tile-btn{display:none!important}.canvas.marking .frame-tile{cursor:crosshair}.loader{color:var(--text);flex-direction:column;align-items:center;gap:10px;display:inline-flex}.loader svg{display:block;overflow:visible}.loader path{fill:currentColor;transform-box:view-box;transform-origin:50%}.loader .ld-spin{transform-box:view-box;transform-origin:50%;animation:1.8s cubic-bezier(.65,0,.35,1) infinite ld-spin}.loader .ld-tl{animation:1.8s cubic-bezier(.65,0,.35,1) infinite ld-tl}.loader .ld-br{animation:1.8s cubic-bezier(.65,0,.35,1) infinite ld-br}.loader .ld-core{animation:1.8s cubic-bezier(.65,0,.35,1) infinite ld-core}@keyframes ld-tl{0%,to{opacity:.45;transform:translate(-10px,-10px)}28%,78%{opacity:1;transform:none}}@keyframes ld-br{0%,to{opacity:.45;transform:translate(10px,10px)}28%,78%{opacity:1;transform:none}}@keyframes ld-core{0%,to{opacity:.5;transform:scale(.72)}28%,78%{opacity:1;transform:none}}@keyframes ld-spin{0%,30%{transform:rotate(0)}74%,to{transform:rotate(180deg)}}.loader-label{color:var(--muted);font-size:11.5px}.loader.soft{color:var(--faint)}.tile-loader{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.canvas-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (prefers-reduced-motion:reduce){.loader .ld-spin,.loader .ld-tl,.loader .ld-br{animation:none}.loader .ld-core{animation:1.6s ease-in-out infinite ld-pulse}}@keyframes ld-pulse{50%{opacity:.4}}.inbox-loading{justify-content:center;padding:28px 0;display:flex}.dlg-row.building .loader{flex-direction:row}.viewer{z-index:30;background:color-mix(in srgb, var(--canvas) 84%, transparent);-webkit-backdrop-filter:blur(18px)saturate(1.1);backdrop-filter:blur(18px)saturate(1.1);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:56px 72px 28px;display:flex;position:fixed;inset:0}.viewer-figure{transform-origin:0 0;will-change:transform;background:var(--stripe-a) center / 100% 100% no-repeat;box-shadow:var(--tile-ring), var(--shadow-dialog);border-radius:6px;flex:none;position:relative}.viewer-img{border-radius:inherit;width:100%;height:100%;animation:.16s ease-out viewer-swap;display:block;position:absolute;inset:0}@keyframes viewer-swap{0%{opacity:0}}.viewer-caption{max-width:calc(100vw - 144px);color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.viewer-meta{align-items:center;gap:12px;min-width:0;display:flex}.viewer-meta>span{white-space:nowrap}.viewer-where{color:var(--text-2);text-overflow:ellipsis;font-weight:600;overflow:hidden}.viewer-copy{background:var(--btn);box-shadow:var(--btn-ring);color:var(--text-2);border-radius:6px;align-items:center;gap:5px;margin-left:auto;padding:4px 9px;font-size:12px;transition:background .18s;display:inline-flex}.viewer-copy:hover{background:var(--hover)}.viewer-note{color:var(--text-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.viewer-close,.viewer-nav{color:var(--text-2);background:var(--btn);box-shadow:var(--btn-ring);border-radius:50%;justify-content:center;align-items:center;transition:background .18s,opacity .18s;display:flex;position:absolute}.viewer-close{width:32px;height:32px;top:14px;right:14px}.viewer-nav{width:40px;height:40px;margin-top:-20px;top:50%}.viewer-nav.prev{left:16px}.viewer-nav.next{right:16px}.viewer-close:hover,.viewer-nav:hover:not(:disabled){background:var(--hover)}.viewer-nav:disabled{opacity:.3;cursor:default}.ins-preview.zoomable{cursor:zoom-in}@media (prefers-reduced-motion:reduce){.viewer-img{animation:none}}.small-screen{z-index:40;background:var(--canvas);justify-content:center;align-items:center;padding:24px 16px;display:flex;position:fixed;inset:0}.small-card{text-align:center;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:360px;display:flex}.small-card img{border-radius:10px}.small-card h1{letter-spacing:-.01em;color:var(--text);margin:6px 0 0;font-size:20px;font-weight:600}.small-card p{color:var(--text-3);margin:0 0 6px;font-size:14px;line-height:1.5}.context-menu{z-index:50;min-width:170px;position:fixed;bottom:auto;right:auto}.menu-row.danger:hover{color:var(--danger)}
