:root{--bg:#0b0e14;--bg2:#12161f;--panel:#161c28;--panel2:#1c2433;--brd:rgba(150,170,205,.14);--ink:#e7ecf5;--muted:#8994a8;--faint:#5f6b83;--accent:#e5157e;--accent2:#ff3d92;--good:#35d69a}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:ui-sans-serif,system-ui,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--accent2);text-decoration:none}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:13px}.xsmall{font-size:11px}.center{display:grid;place-items:center;height:100%}.spacer{flex:1}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--brd);background:transparent;color:var(--ink);font:inherit;font-size:14px;font-weight:600;padding:10px 16px;border-radius:11px;cursor:pointer;transition:background .12s,filter .12s}.btn:hover{background:#96aacd1a}.btn.primary{background:var(--accent);border-color:transparent;color:#fff;box-shadow:0 6px 18px -6px var(--accent)}.btn.primary:hover{filter:brightness(1.08);background:var(--accent)}.btn.ghost{border-color:transparent;color:var(--muted)}.btn:disabled{opacity:.5;cursor:default}input,select{width:100%;background:var(--bg2);border:1px solid var(--brd);border-radius:10px;color:var(--ink);font:inherit;font-size:14px;padding:11px 13px;outline:none}input:focus,select:focus{border-color:var(--accent)}.card{background:var(--panel);border:1px solid var(--brd);border-radius:16px}.err{background:#ff50501f;border:1px solid rgba(255,80,80,.3);color:#ffb4b4;padding:9px 12px;border-radius:10px;font-size:13px}.pill{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.03em;padding:2px 8px;border-radius:999px;text-transform:uppercase}.pill.softedge{background:#3b82f629;color:#7fb3ff}.pill.hardedge{background:#e5783c2e;color:#ffb185}.auth-wrap{min-height:100%;display:grid;place-items:center;padding:24px;background:radial-gradient(1000px 500px at 50% 25%,#1a2233,#0b0e14)}.auth-card{width:360px;max-width:100%;padding:28px;display:flex;flex-direction:column;gap:14px}.auth-logo{display:flex;justify-content:center;margin-bottom:4px}.auth-card h2{margin:0 0 4px;text-align:center;font-size:20px}.auth-card label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--muted)}.auth-card .btn{margin-top:6px}.auth-card p{text-align:center;margin:2px 0 0}.app{min-height:100%;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:14px;padding:14px 22px;border-bottom:1px solid var(--brd);background:#10141c99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.content{flex:1;max-width:1160px;width:100%;margin:0 auto;padding:28px 22px}.gallery-head{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:22px}.gallery-head h1{font-size:24px;margin:0}.newproj{display:flex;gap:8px;align-items:center}.newproj input{width:220px}.newproj select{width:auto}.empty{padding:60px;text-align:center;color:var(--muted);border:1px dashed var(--brd);border-radius:16px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}.proj{overflow:hidden;transition:transform .12s,border-color .12s;display:block}.proj:hover{transform:translateY(-3px);border-color:#e5157e80}.thumb{aspect-ratio:4/3;background:linear-gradient(135deg,#1c2433,#141a26);display:grid;place-items:center}.thumb-ph{font-size:40px;color:#33405a}.proj-meta{padding:12px 14px}.proj-title{font-weight:650;margin-bottom:5px}.editor{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.viewport{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none;outline:none}.topbar.over{position:absolute;top:0;left:0;right:0;z-index:10;background:linear-gradient(rgba(11,14,20,.75),transparent);border:0;-webkit-backdrop-filter:none;backdrop-filter:none}.proj-name{font-weight:650}.editor-dock{position:absolute;bottom:18px;left:50%;transform:translate(-50%);z-index:10;display:flex;gap:14px;align-items:center;background:#161c28d9;border:1px solid var(--brd);border-radius:14px;padding:9px 14px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.stepper{display:inline-flex;align-items:center;border:1px solid var(--brd);border-radius:10px;overflow:hidden}.stepper button{border:0;background:transparent;color:var(--ink);font-size:17px;width:34px;height:40px;cursor:pointer}.stepper button:hover{background:#96aacd1f}.stepper .lv{min-width:60px;text-align:center;font-size:10px;line-height:1.1}.stepper .lv small{display:block;font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.stepper .lv b{font-size:14px}.auth-wrap{position:fixed;top:0;right:0;bottom:0;left:0;min-height:100vh;display:flex;align-items:center;justify-content:center}.cpane{position:absolute;top:64px;right:14px;bottom:74px;width:236px;z-index:10;overflow-y:auto;background:#161c28e6;border:1px solid var(--brd);border-radius:14px;padding:14px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.cpane-h{font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-weight:700}.mat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mat-sw{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 6px;border:1px solid var(--brd);border-radius:11px;background:transparent;cursor:pointer;color:var(--ink);transition:border-color .12s,background .12s}.mat-sw:hover{background:#96aacd14}.mat-sw.on{border-color:var(--accent);background:#e5157e1a}.mat-sw .chip{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.14)}.mat-nm{font-size:11px;color:var(--muted)}.mat-sw.on .mat-nm{color:var(--ink)}.cslider{margin:10px 0}.cslider label{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:4px;font-family:ui-monospace,monospace}.cslider input{width:100%;accent-color:var(--accent);padding:0;background:transparent;border:0}.cpane-note{margin-top:12px;font-size:10.5px;line-height:1.45;color:var(--faint)}@media (max-width:720px){.cpane{width:180px}}.editor-dock.wide{gap:6px;flex-wrap:wrap;max-width:calc(100vw - 280px);justify-content:center}.tbtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--brd);background:transparent;color:var(--ink);font:inherit;font-size:12.5px;font-weight:600;padding:8px 11px;border-radius:9px;cursor:pointer;white-space:nowrap;transition:background .12s,opacity .12s}.tbtn:hover{background:#96aacd1f}.tbtn.primary{background:var(--accent);border-color:transparent;color:#fff}.tbtn.primary:hover{filter:brightness(1.08)}.tbtn:disabled{opacity:.35;cursor:default}.tbtn:disabled:hover{background:transparent}.tsep{width:1px;align-self:stretch;background:var(--brd);margin:2px 3px}.etoast{position:absolute;top:64px;left:50%;transform:translate(-50%);z-index:20;background:#161c28f2;border:1px solid var(--brd);border-radius:10px;padding:8px 16px;font-size:13px;font-weight:600;color:var(--ink)}.cpane-stats{margin-top:12px;font-size:12px;color:var(--muted);font-family:ui-monospace,monospace}.ptabs{display:flex;gap:4px;padding:3px;background:#0b0e1480;border:1px solid var(--brd);border-radius:10px;margin-bottom:12px}.ptabs button{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-size:12.5px;font-weight:650;padding:7px;border-radius:8px;cursor:pointer}.ptabs button.on{background:var(--accent);color:#fff}.col-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.col-sw{aspect-ratio:1;border-radius:9px;border:1px solid rgba(255,255,255,.14);cursor:pointer;transition:transform .1s}.col-sw:hover{transform:scale(1.08)}.col-row{display:flex;gap:6px;align-items:center;margin-bottom:8px}.col-row input[type=color]{width:38px;height:34px;padding:0;border:1px solid var(--brd);border-radius:9px;background:transparent;cursor:pointer}.btn.sm{padding:8px 11px;font-size:12.5px}.gizmo{position:absolute;right:250px;bottom:78px;z-index:12;pointer-events:none}@media (max-width:860px){.gizmo{right:14px;bottom:150px}}.folder{display:flex;flex-direction:column;text-align:left;cursor:pointer;border:0;background:var(--panel);overflow:hidden;transition:transform .12s,border-color .12s}.folder:hover{transform:translateY(-3px)}.folder-ic{aspect-ratio:4/3;display:grid;place-items:center;font-size:48px;background:linear-gradient(135deg,#20283a,#161c28);position:relative}.folder-ic .lock{position:absolute;top:8px;right:10px;font-size:16px}.crumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--accent2);font:inherit;font-size:inherit;font-weight:inherit;cursor:pointer;padding:0}.crumb:hover{text-decoration:underline}.grid.folders{margin-bottom:16px}.topnav{display:flex;gap:4px;margin-left:8px}.topnav a{color:var(--muted);font-size:13.5px;font-weight:600;padding:6px 12px;border-radius:9px}.topnav a:hover{background:#96aacd1a;color:var(--ink)}.topnav a.on{color:var(--ink);background:#e5157e24}.lib{display:flex;flex-direction:column;text-align:left;cursor:pointer;border:0;background:var(--panel);overflow:hidden;transition:transform .12s}.lib:hover{transform:translateY(-3px)}.lib-ic{aspect-ratio:16/10;display:grid;place-items:center;font-size:52px;background:linear-gradient(135deg,#241d33,#161c28);position:relative}.lib-ic .lock{position:absolute;top:10px;right:12px;font-size:18px}.lib-ic .owned{position:absolute;top:10px;right:12px;font-size:15px;background:var(--good);color:#04231a;border-radius:999px;width:22px;height:22px;display:grid;place-items:center;font-weight:800}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#06090ea8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:24px}.modal{width:400px;max-width:100%;background:var(--panel);border:1px solid var(--brd);border-radius:18px;padding:26px;text-align:center}.modal-ic{font-size:52px;margin-bottom:6px}.modal h2{margin:0 0 8px}.modal p{margin:6px 0}.modal-actions{display:flex;gap:10px;justify-content:center;margin-top:20px}.gizmo{pointer-events:auto;cursor:pointer}.gizmo:hover{filter:brightness(1.15)}.ctx{position:fixed;z-index:100;min-width:196px;padding:6px;border-radius:12px;background:var(--panel2);border:1px solid var(--brd);box-shadow:0 18px 48px -12px #000000b3;font-size:13px}.ctx-head{font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--faint);padding:5px 10px 6px}.ctx-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;color:var(--ink);position:relative;-webkit-user-select:none;user-select:none}.ctx-item:hover{background:#96aacd24}.ctx-item.disabled{color:var(--faint);opacity:.5;pointer-events:none}.ctx-item .ic{width:18px;height:18px;flex:none;display:grid;place-items:center;color:var(--muted)}.ctx-item:hover .ic{color:var(--accent2)}.ctx-item .ic svg{width:16px;height:16px}.ctx-item .lb{flex:1}.ctx-item .kbd{font-size:10px;color:var(--faint);font-family:ui-monospace,monospace}.ctx-item .arw{color:var(--faint);font-size:11px}.ctx-sep{height:1px;background:var(--brd);margin:5px 6px}.ehint{position:absolute;left:16px;bottom:16px;z-index:11;max-width:340px;font-size:11.5px;line-height:1.5;color:var(--muted);pointer-events:none}.ehint .lead{color:var(--accent2);font-weight:650}.ehint b{color:var(--ink);font-weight:600}@media (max-width:860px){.ehint{display:none}}.tbtn.tog.on{border-color:var(--accent);background:#e5157e24;color:var(--ink)}.modeseg{display:inline-flex;gap:3px;padding:3px;background:#0b0e148c;border:1px solid var(--brd);border-radius:10px}.modeseg button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:8px;cursor:pointer;white-space:nowrap;transition:background .12s,color .12s}.modeseg button:hover{color:var(--ink)}.modeseg button.on{background:var(--accent);color:#fff}.pill.hardedge{background:#ffa03c29;color:#ffb057;border:1px solid rgba(255,160,60,.3)}.stepper.off{opacity:.45}.stepper button:disabled{opacity:.5;cursor:default}.miniadd{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--brd);background:transparent;color:var(--ink);width:22px;height:22px;border-radius:7px;cursor:pointer;font-size:14px;line-height:1;display:grid;place-items:center}.miniadd:hover{background:#e5157e24;border-color:var(--accent)}.objlist{display:flex;flex-direction:column;gap:3px;margin:8px 0 14px;max-height:150px;overflow-y:auto}.objrow{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid transparent;border-radius:9px;background:#0b0e1466;cursor:pointer;color:var(--ink);font:inherit;font-size:12.5px;text-align:left;transition:background .12s,border-color .12s}.objrow:hover{background:#96aacd1a}.objrow.on{border-color:var(--accent);background:#e5157e1f}.objrow .objdot{width:8px;height:8px;border-radius:50%;background:var(--faint);flex:none}.objrow.on .objdot{background:var(--accent)}.objrow .objnm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.objrow .objtype{font-size:9.5px;font-weight:700;width:16px;height:16px;display:grid;place-items:center;border-radius:5px;flex:none}.objrow .objtype.softedge{background:#78a0ff33;color:#8fb4ff}.objrow .objtype.hardedge{background:#ffa03c33;color:#ffb057}.tin{width:62px;background:var(--bg2);border:1px solid var(--brd);border-radius:8px;color:var(--ink);font:inherit;font-size:12.5px;padding:7px 8px;outline:none;font-variant-numeric:tabular-nums}.tin:focus{border-color:var(--accent)}select.tin.sel{width:52px;padding:6px 4px}.trow{display:flex;gap:6px;align-items:center;margin-top:6px;flex-wrap:wrap}.trow .btn.sm{padding:7px 11px}.tnum{display:flex;flex-direction:column;gap:3px;font-size:10px;color:var(--muted)}.tnum span{padding-left:2px;letter-spacing:.08em}.ptabs button{flex:1}.ctx-head.drag{cursor:move;-webkit-user-select:none;user-select:none;display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--brd);margin-bottom:4px;padding-bottom:7px}.ctx-head.drag:hover{color:var(--muted)}.ctx-grip{opacity:.55;font-size:11px;letter-spacing:1px}.editor.work .ehint{color:#4a5670}.editor.work .ehint b{color:#212b45}.editor.work .ehint .lead{color:#c11d6d}.camempty{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:grid;place-items:center;background:#42474f;color:#cdd2dc;text-align:center;font-size:16px;line-height:1.7;pointer-events:none}.camempty small{color:#9aa2b0;font-size:12.5px}.objdel{width:18px;height:18px;display:grid;place-items:center;border-radius:5px;color:var(--faint);cursor:pointer;flex:none;font-size:13px}.objdel:hover{background:#ff505033;color:#ff7b7b}select.tin.camsel{width:auto;min-width:110px;padding:7px 8px}.objrow.dim .objnm{opacity:.45;text-decoration:line-through}.objtool{min-width:22px;height:18px;display:grid;place-items:center;border-radius:5px;font-size:9px;font-weight:700;color:var(--faint);cursor:pointer;flex:none;padding:0 3px;letter-spacing:.03em}.objtool:hover{background:#96aacd29;color:var(--ink)}.objtool.act{background:#e5157e2e;color:var(--accent2)}.linkrow{display:flex;align-items:center;gap:8px;padding:3px 9px 3px 26px;font-size:11px;color:var(--muted)}.linkrow .objnm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.axseg{display:inline-flex;gap:2px;padding:2px;background:#0b0e148c;border:1px solid var(--brd);border-radius:8px}.axbtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;font:inherit;font-size:10px;font-weight:800;width:22px;height:22px;border-radius:6px;cursor:pointer;color:var(--faint);transition:background .1s,color .1s}.axbtn.x.on{background:#35c46a38;color:#4ade80}.axbtn.y.on{background:#3d7bff38;color:#7aa5ff}.axbtn.z.on{background:#ff4d4d38;color:#ff7b7b}.sgraph{width:100%;border:1px solid var(--brd);border-radius:10px;cursor:crosshair;touch-action:none;display:block}.viewport{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}html,body{overscroll-behavior:none}.impbtn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px;border:1px dashed var(--brd);border-radius:11px;color:var(--ink);font-size:13px;font-weight:600;cursor:pointer;transition:border-color .12s,background .12s;margin-bottom:8px}.impbtn:hover{border-color:var(--accent);background:#e5157e12}.cpane{overflow:visible;padding:0;transition:transform .28s ease}.cpane-scroll{height:100%;overflow-y:auto;padding:14px;scrollbar-width:thin}.cpane.closed{transform:translate(calc(100% + 20px))}.cpane-lasche{position:absolute;left:-23px;top:50%;transform:translateY(-50%);width:22px;height:66px;display:grid;place-items:center;background:#161c28f0;border:1px solid var(--brd);border-right:0;border-radius:10px 0 0 10px;cursor:pointer;color:var(--muted);font-size:10px;z-index:6}.cpane-lasche:hover{color:var(--ink);background:#e5157e33}.ptabs.main3{margin-bottom:10px}.rollup{border:1px solid var(--brd);border-radius:11px;margin-bottom:8px;background:#0b0e1459;overflow:hidden}.rollup-h{display:flex;align-items:center;gap:8px;padding:9px 11px;cursor:pointer;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);-webkit-user-select:none;user-select:none}.rollup-h:hover{color:var(--ink);background:#96aacd12}.rollup.open .rollup-h{color:var(--ink)}.rollup-pm{width:16px;height:16px;display:grid;place-items:center;border:1px solid var(--brd);border-radius:5px;font-size:11px;color:var(--accent2);flex:none}.rollup-t{flex:1}.rollup-badge{font-size:10px;background:#e5157e2e;color:var(--accent2);border-radius:8px;padding:1px 7px}.rollup-b{padding:6px 11px 12px}.editor-dock.wide{left:0;right:0;bottom:0;transform:none;max-width:none;border-radius:0;border:0;border-top:1px solid var(--brd);background:linear-gradient(180deg,#121722c7,#090c13f7);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;justify-content:flex-start;padding:10px 14px;scrollbar-width:thin}.editor-dock.wide::-webkit-scrollbar{height:5px}.editor-dock.wide::-webkit-scrollbar-thumb{background:#96aacd40;border-radius:3px}.editor-dock .tbtn,.editor-dock .stepper,.editor-dock .axseg,.editor-dock .tsep{flex:none}.gizmo{left:12px;right:auto;bottom:160px}.ehint{left:16px;bottom:76px;max-width:520px}@media (max-width:860px){.gizmo{right:auto;left:12px;bottom:160px}.ehint{display:block;font-size:10.5px;max-width:320px}}.stroke-strip{position:absolute;left:0;right:0;bottom:62px;z-index:11;background:linear-gradient(180deg,#121722e6,#0a0d14f7);border-top:1px solid var(--brd);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:8px 16px 10px}.ss-head{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-size:12.5px;color:var(--ink);flex-wrap:wrap}.ss-head .tnum{flex-direction:row;align-items:center;gap:6px}.stroke-strip .sgraph{height:92px}.editor.stripon .gizmo{bottom:280px}.editor.stripon .cpane{bottom:236px}@media (min-width:1150px){.editor-dock.wide{justify-content:center}}.rotpop{position:absolute;left:50%;bottom:76px;transform:translate(-50%);z-index:30;background:var(--panel2);border:1px solid var(--brd);border-radius:13px;padding:12px 14px;box-shadow:0 18px 48px -12px #000000b3;min-width:300px}.editor.stripon .rotpop{bottom:230px}.editor.clean .topbar,.editor.clean .editor-dock,.editor.clean .cpane,.editor.clean .ehint,.editor.clean .stroke-strip,.editor.clean .gizmo,.editor.clean .rotpop{display:none}.cleanbar{position:absolute;top:10px;left:10px;z-index:40;display:flex;gap:4px;background:#161c28e0;border:1px solid var(--brd);border-radius:12px;padding:5px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cleanbar button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--ink);font-size:15px;width:34px;height:34px;border-radius:9px;cursor:pointer}.cleanbar button:hover{background:#e5157e2e}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}.editor .cpane{top:calc(var(--top-off,64px) + 6px);bottom:calc(var(--bot-off,68px) + 8px)}.editor.stripon .cpane{bottom:calc(var(--bot-off,236px) + 8px)}.cpane-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;zoom:var(--uiZoom,1)}.editor-dock.wide{zoom:var(--uiZoom,1)}.watchpill{background:#f4511e24;border:1px solid rgba(244,81,30,.5);color:#ffb59a;font-size:12px;font-weight:700;border-radius:9px;padding:5px 12px;white-space:nowrap;animation:watchpulse 2.4s ease-in-out infinite}@keyframes watchpulse{0%,to{opacity:1}50%{opacity:.6}}.editor.watch .editor-dock,.editor.watch .cpane,.editor.watch .stroke-strip{pointer-events:none;opacity:.5;filter:saturate(.5)}.card{position:relative}.share-fab{position:absolute;top:8px;right:8px;z-index:3;display:grid;place-items:center;width:30px;height:30px;background:#0c1018c7;border:1px solid var(--brd);border-radius:9px;color:var(--ink);font-size:14px;cursor:pointer;opacity:0;transition:opacity .15s}.card:hover .share-fab{opacity:1}.share-fab:hover{background:#e5157e40}@media (pointer:coarse){.share-fab{opacity:.85}}.pill.collab{background:#2f9bff29;color:#7cc0ff}.pill.lockp{background:#f4511e29;color:#ffb59a}.sh-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05080e9e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:80}.sh-modal{width:420px;max-width:92vw;background:#131824;border:1px solid var(--brd);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:12px;box-shadow:0 30px 80px -30px #000000b3}.sh-modal h3{margin:0;font-size:16px}.sh-modal input{background:#0b0e14;border:1px solid var(--brd);border-radius:10px;color:var(--ink);font:inherit;font-size:14.5px;padding:10px 12px;outline:none}.sh-modal input:focus{border-color:var(--accent2)}.sh-modal .row{display:flex;gap:10px}.sh-modal .row .btn{flex:1}.sh-note{font-size:12px;color:var(--muted);line-height:1.5}.sh-msg{font-size:13px;font-weight:600}.vlseg button{font-size:15px;line-height:1}.vpane{position:absolute;pointer-events:none;border:1px solid rgba(150,170,205,.18);z-index:4}.vpane.on{border:1px solid rgba(229,21,126,.8);box-shadow:inset 0 0 0 1px #e5157e59,inset 0 0 18px #e5157e12}.vpane-tag{position:absolute;top:6px;left:8px;pointer-events:auto;cursor:pointer;background:#0c1018c7;border:1px solid var(--brd);border-radius:8px;color:var(--ink);font-size:11.5px;font-weight:700;padding:3px 9px;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.vpane-tag:hover{background:#e5157e40}.vpane.on .vpane-tag{border-color:#e5157e8c}.vsplit{position:absolute;z-index:5;background:transparent}.vsplit:hover,.vsplit:active{background:#e5157e59}.vsplit.v{top:0;bottom:0;width:7px;cursor:col-resize}.vsplit.h{left:0;right:0;height:7px;cursor:row-resize}.lcol{width:26px;height:26px;padding:0;border:1px solid var(--brd);border-radius:7px;background:transparent;cursor:pointer;flex:none}.lcol::-webkit-color-swatch-wrapper{padding:2px}.lcol::-webkit-color-swatch{border:0;border-radius:5px}.submode{display:flex;gap:4px;align-items:center;flex:none;border-right:1px solid var(--brd);padding-right:8px;margin-right:2px}.objrow.co{background:#2f9bff1a;border-color:#2f9bff4d}.objrow.grp{background:#96aacd14;font-weight:700}.editor .cpane{right:0;width:var(--cpane-w,300px);min-width:200px;max-width:70vw;border-top-right-radius:0;border-bottom-right-radius:0}.cpane-resize{position:absolute;left:0;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:7;touch-action:none}.cpane-resize:hover,.cpane-resize:active{background:linear-gradient(90deg,rgba(229,21,126,.45),transparent)}@media (max-width:720px){.editor .cpane{width:var(--cpane-w,240px)}}.ptabs.main3{display:flex;align-items:flex-end;gap:3px;padding:0;background:transparent;border:0;border-radius:0;border-bottom:3px solid var(--accent2);margin-bottom:12px}.ptabs.main3 button{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;font:inherit;font-size:12.5px;font-weight:650;cursor:pointer;color:var(--muted);background:#8b5cf633;padding:7px 4px 6px;margin-top:3px;border-radius:0;clip-path:polygon(9px 0,calc(100% - 9px) 0,100% 100%,0 100%);transition:background .12s,color .12s,padding .12s}.ptabs.main3 button:hover{background:#8b5cf661;color:var(--ink)}.ptabs.main3 button.on{background:var(--accent2);color:#fff;font-weight:800;padding-top:10px;margin-top:0}.ptabs.main3{gap:0;padding:2px 6px 0;overflow:visible}.ptabs.main3 button{position:relative;z-index:1;border-radius:9px 9px 0 0;clip-path:none;transform:perspective(30px) rotateX(4deg);transform-origin:bottom center;box-shadow:-4px 0 7px -2px #00000073;display:flex;align-items:center;justify-content:center;gap:5px;min-width:0}.ptabs.main3 button+button{margin-left:-10px}.ptabs.main3 button:hover{z-index:2}.ptabs.main3 button.on{z-index:3;box-shadow:-5px 0 8px -1px #0000008c,5px 0 8px -1px #0000008c,0 -2px 6px #0000004d}.ptabs.main3 .ti{font-size:13px;line-height:1;flex:none}.ptabs.main3 .tl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cpane{container-type:inline-size}@container (max-width: 252px){.ptabs.main3 .tl{display:none}.ptabs.main3 .ti{font-size:16px}}.ptabs.main3 button{background:#3b3560}.ptabs.main3 button:hover{background:#4c4478}.ptabs.main3 button.on{background:var(--accent2)}.cpane.closed{transform:translate(100%)}.cpane.closed .cpane-lasche{width:28px;left:-28px;height:96px;background:#e5157e66;border-color:#e5157eb3;color:#fff;font-size:13px;box-shadow:-4px 0 12px #00000080}.belt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;margin-top:8px}.belt-card{position:relative;background:#0b0e1480;border:1px solid var(--brd);border-radius:11px;padding:6px 6px 7px;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-user-drag:element}.belt-card:active{cursor:grabbing}.belt-card:hover{border-color:var(--accent2)}.belt-thumb{display:block;width:100%;height:auto;background:#96aacd0f;border-radius:7px;pointer-events:none}.belt-nm{font-size:11.5px;font-weight:700;color:var(--ink);margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.belt-meta{font-size:10px;color:var(--muted)}.belt-add{position:absolute;right:28px;top:9px;width:20px;height:20px;display:grid;place-items:center;background:var(--accent2);color:#fff;border-radius:6px;cursor:pointer;font-size:13px;font-weight:800;box-shadow:0 2px 6px #0006}.belt-add:hover{filter:brightness(1.15)}.belt-del{position:absolute;right:5px;top:9px;width:20px;height:20px;display:grid;place-items:center;background:#0c1018d9;border:1px solid var(--brd);color:var(--muted);border-radius:6px;cursor:pointer}.belt-del:hover{color:#ff7a6b;border-color:#ff7a6b}.ai-modal{width:540px;max-width:94vw;gap:14px;padding:26px}.ai-modal h3{font-size:19px}.ai-ta{background:#0b0e14;border:1px solid var(--brd);border-radius:12px;color:var(--ink);font:inherit;font-size:15.5px;line-height:1.45;padding:12px 14px;outline:none;resize:vertical;min-height:74px}.ai-ta:focus{border-color:var(--accent2);box-shadow:0 0 0 3px #e5157e26}.ai-sugg{display:flex;flex-wrap:wrap;gap:7px}.ai-chip{background:#96aacd1a;border:1px solid var(--brd);border-radius:999px;color:var(--ink);font-size:12.5px;font-weight:600;padding:5px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.ai-chip:hover{background:#e5157e38;border-color:#e5157e80}.ai-styles{display:flex;gap:8px}.ai-styles .btn{flex:1;white-space:nowrap}@media (max-width:560px){.ai-styles{flex-direction:column}}.sk-modal{width:980px;max-width:96vw;gap:11px;padding:22px}.sk-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.sk-sep{width:1px;height:22px;background:var(--brd);margin:0 4px}.sk-swatch{width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.25);cursor:pointer;display:inline-block}.sk-swatch.on{border-color:#fff;box-shadow:0 0 0 2px #e5157e8c}.sk-wrap{position:relative;width:100%;aspect-ratio:920/520;background:#f7f8fa;border-radius:10px;overflow:hidden;border:1px solid var(--brd)}.sk-wrap canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;touch-action:none}.sk-wrap .sk-top{cursor:crosshair}.sh-overlay{align-items:flex-start;padding:4vh 0;overflow-y:auto}.sh-modal{max-height:92vh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;margin:auto}.ai-cxrow{display:flex;align-items:center;gap:10px}.ai-cxlb{font-size:12.5px;font-weight:700;color:var(--muted);white-space:nowrap}.ai-cxrow input[type=range]{flex:1;accent-color:var(--accent2);min-width:80px}.ai-cxval{font-size:12px;font-weight:600;white-space:nowrap;min-width:150px;text-align:right}.ai-foot{align-items:center}.ai-foot .ai-tok{flex:1;font-size:12.5px;font-weight:700;color:#ffd23f;white-space:nowrap}.ai-foot .btn{flex:0 1 auto;min-width:120px}@media (max-width:560px){.ai-cxval{min-width:0}}.ltools{position:absolute;left:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:6px;z-index:7}.ltools button{width:40px;height:40px;border-radius:12px;background:#0c1018c7;border:1px solid var(--brd);color:var(--ink);font-size:17px;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center}.ltools button:hover{background:#e5157e38}.ltools button.on{background:#e5157ee6;border-color:transparent;box-shadow:0 4px 16px -6px #e5157ecc}.ltools-sep{height:1px;background:var(--brd);margin:2px 5px}.rubber{position:absolute;border:1.5px dashed rgba(229,21,126,.95);background:#e5157e17;pointer-events:none;z-index:6;border-radius:3px}.editor.tool-zoom canvas.viewport{cursor:zoom-in}.editor.tool-arrow canvas.viewport{cursor:default}.editor.tool-path canvas.viewport{cursor:crosshair}@media (pointer:coarse){.ltools{left:6px}.ltools button{width:44px;height:44px}}.ppop{position:absolute;left:60px;top:50%;transform:translateY(-50%);width:196px;background:#0d111aeb;border:1px solid var(--brd);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px;z-index:7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ppop-h{font-size:13.5px;font-weight:800}.ppop-h2{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.ppop-row{display:flex;gap:6px;align-items:center}.ppop-row .btn{flex:0 0 auto;width:40px;font-size:15px}.ppop-n{width:40px;background:#0b0e14;border:1px solid var(--brd);border-radius:8px;color:var(--ink);font:inherit;font-size:13px;padding:5px 7px;text-align:center;outline:none}.ppop-note{font-size:11px;color:var(--muted);line-height:1.45}.ppop input[type=range]{accent-color:var(--accent2);width:100%}@media (pointer:coarse){.ppop{left:56px;width:210px}}.lt-grip{width:40px;height:18px;display:grid;place-items:center;color:var(--muted);font-size:11px;cursor:grab;-webkit-user-select:none;user-select:none;border-radius:8px;touch-action:none}.lt-grip:hover{background:#e5157e33;color:var(--ink)}.lt-grip:active{cursor:grabbing}.ticon{object-fit:contain;vertical-align:-4px;image-rendering:-webkit-optimize-contrast;pointer-events:none}.modeseg .ticon{margin-right:2px}.ltools button{transition:transform .12s ease,background .15s ease,box-shadow .15s ease}.ltools button:hover{transform:scale(1.1)}.ltools button.on{box-shadow:0 4px 18px -4px #e5157ed9}.tbtn .ticon{margin-right:3px}.tbtn{transition:background .13s ease,transform .1s ease}.tbtn:not(:disabled):hover{transform:translateY(-1px)}.tbtn:disabled .ticon{opacity:.35;filter:grayscale(.7)}.editor-dock .tbtn{display:inline-flex;align-items:center;gap:1px}.vpane.tt .vpane-tag{top:calc(var(--top-off, 52px) + 8px)}.editor.pubview .cpane,.editor.pubview .cpane-lasche,.editor.pubview .editor-dock,.editor.pubview .toolhud,.editor.embedview .topbar{display:none!important}.exp-tabs{display:flex;gap:4px;background:#ffffff0f;border-radius:9px;padding:3px;margin-bottom:14px;width:max-content}.exp-tabs button{border:0;background:transparent;color:#aeb6c2;padding:6px 16px;border-radius:7px;cursor:pointer;font-size:13px}.exp-tabs button.on{background:#e5157e;color:#fff}.shl-new{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.shl-seg{display:flex;border:1px solid rgba(255,255,255,.14);border-radius:8px;overflow:hidden}.shl-seg button{border:0;background:transparent;color:#aeb6c2;padding:6px 12px;cursor:pointer;font-size:12.5px}.shl-seg button.on{background:#e5157e47;color:#fff}.shl-card{margin-top:10px;padding:10px 12px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.shl-head{display:flex;align-items:center;gap:8px;margin-bottom:7px}.shl-badge{font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:99px;background:#50a0ff2e;color:#9ec9ff}.shl-badge.edit{background:#ffaa3c29;color:#ffcf8f}.shl-exp{font-size:11.5px;color:#8b93a0}.shl-del{margin-left:auto;cursor:pointer;opacity:.6;font-size:14px}.shl-del:hover{opacity:1}.shl-row{display:flex;gap:6px;align-items:center}.shl-row .tin{flex:1;min-width:0}.fpv-navseg{position:absolute;right:14px;bottom:14px;z-index:7;display:flex;gap:4px;background:#0a0c1280;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:10px;padding:4px}.fpv-navseg button{border:0;background:transparent;font-size:17px;padding:5px 10px;border-radius:8px;cursor:pointer;opacity:.7}.fpv-navseg button.on{background:#e5157e73;opacity:1}.fpv-stick{position:absolute;bottom:30px;width:112px;height:112px;border-radius:50%;background:#ffffff14;border:1.5px solid rgba(255,255,255,.22);z-index:7;touch-action:none;display:flex;align-items:center;justify-content:center}.fpv-stick.l{left:24px}.fpv-stick.r{right:24px}.fpv-knob{width:46px;height:46px;border-radius:50%;background:#ffffff47;border:1.5px solid rgba(255,255,255,.4)}.hint-pill{position:absolute;transform:translate(-50%,-50%);z-index:6;display:flex;align-items:center;gap:6px;background:#10121abd;border:1.5px solid rgba(255,190,60,.85);color:#ffd98f;border-radius:99px;padding:5px 12px 5px 10px;cursor:pointer;font-size:14px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);-webkit-user-select:none;user-select:none}.hint-pill:hover{background:#2c220ee0}.hint-pill-t{font-size:12px;color:#f4e8cf;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hint-img{max-width:100%;max-height:260px;border-radius:8px;margin:8px 0;display:block}.hint-text{white-space:pre-wrap;color:#c9d0da;font-size:13.5px;line-height:1.5;text-align:left}.hint-pop{max-width:min(440px,92vw)}.anim-bar{position:absolute;left:10px;right:10px;bottom:10px;z-index:6;background:#0d1018e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:8px 12px;display:flex;flex-direction:column;gap:7px}.anim-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.anim-chip{border:1px solid rgba(255,255,255,.16);background:#ffffff0d;color:#c6cdd8;border-radius:8px;padding:4px 12px;cursor:pointer;font-size:12.5px}.anim-chip.on{background:#e5157e52;border-color:#e5157ea6;color:#fff}.anim-chip.add{font-weight:700}.anim-lbl{font-size:11.5px;color:#8b93a0;white-space:nowrap}.anim-frame{min-width:58px;text-align:center;font-variant-numeric:tabular-nums;color:#c6cdd8}.anim-num{width:52px;text-align:center}.editor.watch .anim-bar{display:none}.editor.animon .toolhud{display:none!important}.editor.animon .toast{bottom:240px!important}.anim-spop{background:#141822f7;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:10px 12px;max-width:480px}.anim-kpop{position:absolute;bottom:calc(100% + 8px);left:20px;z-index:8;box-shadow:0 8px 30px #00000080}.anim-bar{max-height:46vh;overflow-y:auto}.anim-tl{display:flex;border-top:1px solid rgba(255,255,255,.1);padding-top:6px}.anim-tl-left{width:168px;flex:none}.anim-corner{height:20px;font-size:10.5px;color:#8b93a0;display:flex;align-items:center;padding-left:4px}.anim-trk-head{height:26px;display:flex;align-items:center;gap:5px;padding:0 4px;border-radius:6px;cursor:pointer}.anim-trk-head.on{background:#e5157e29}.anim-eye{cursor:pointer;font-size:12px;width:18px;text-align:center;opacity:.8}.anim-trk-nm{flex:1;font-size:12px;color:#c6cdd8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.anim-keybtn{cursor:pointer;color:#ffbe3c;font-size:13px;padding:0 4px;opacity:.75}.anim-keybtn:hover{opacity:1}.anim-tl-right{flex:1;position:relative;min-width:0}.anim-ruler{height:20px;position:relative;cursor:ew-resize;background:#ffffff0a;border-radius:6px 6px 0 0;overflow:hidden}.anim-tick{position:absolute;top:2px;font-size:9.5px;color:#737b88;border-left:1px solid rgba(255,255,255,.2);padding-left:3px;height:100%}.anim-trk-lane{height:26px;position:relative;border-top:1px solid rgba(255,255,255,.05)}.anim-trk-lane.on{background:#e5157e12}.anim-key{position:absolute;top:50%;width:11px;height:11px;transform:translate(-50%,-50%) rotate(45deg);background:#ffbe3c;border:1.5px solid #171b25;border-radius:2px;cursor:ew-resize;z-index:2}.anim-key:hover{background:#ffd97a}.anim-playhead{position:absolute;top:0;bottom:0;width:2px;background:#e5157e;pointer-events:none;z-index:3}.editor.animon .ehint{display:none!important}.topbar .btn.gal{background:#e5157e24;border:1px solid rgba(229,21,126,.5);color:#fff;border-radius:9px;padding:6px 12px;cursor:pointer}.topbar .btn.gal:hover{background:#e5157e4d}.hint-pill{position:absolute;z-index:30;transform:translate(-50%,-50%);width:20px;height:20px;padding:0;border-radius:50%;background:#ffb826;color:#241a05;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 6px #00000073;transition:transform .18s ease;-webkit-user-select:none;user-select:none;font-style:normal}.hint-pill .hint-pill-t{display:none}.hint-pill:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:50%;border:2px solid rgba(255,184,38,.9);opacity:0;transform:scale(.6);pointer-events:none}.hint-pill:hover{transform:translate(-50%,-50%) scale(1.4)}.hint-pill:hover:after{animation:hintHalo 1.3s ease-out infinite}@keyframes hintHalo{0%{opacity:.95;transform:scale(.7)}70%{opacity:.25;transform:scale(1.25)}to{opacity:0;transform:scale(1.5)}}.hint-bubble{position:absolute;z-index:31;max-width:280px;min-width:180px;background:#171c26;border:1px solid #2c3547;border-radius:12px;padding:12px 14px;box-shadow:0 10px 32px #00000080;color:#e8ecf4}.hint-bubble[data-side=top]{transform:translate(-50%,-100%)}.hint-bubble[data-side=bottom]{transform:translate(-50%)}.hint-bubble:after{content:"";position:absolute;left:calc(50% + var(--tx,0px));width:14px;height:14px;background:#171c26;transform:translate(-50%) rotate(45deg)}.hint-bubble[data-side=top]:after{bottom:-8px;border-right:1px solid #2c3547;border-bottom:1px solid #2c3547}.hint-bubble[data-side=bottom]:after{top:-8px;border-left:1px solid #2c3547;border-top:1px solid #2c3547}.hint-bubble h4{margin:0 14px 6px 0;font-size:14px}.hint-bubble .hint-img{width:100%;border-radius:8px;margin:4px 0 6px;display:block}.hint-bubble .hint-text{font-size:13px;line-height:1.45;color:#c7cfdd;white-space:pre-wrap}.hint-bubble .hb-x{position:absolute;top:7px;right:10px;cursor:pointer;color:#8fa0b8;font-size:13px;line-height:1}.hint-bubble .hb-x:hover{color:#fff}.hint-bubble .btn{margin-top:8px;display:inline-block}.mat-grid .chip{width:44px;height:44px}.mat-ball{display:block;width:48px;height:48px;border-radius:50%;background-size:cover;background-position:center;background-color:#8b96a8;box-shadow:inset -9px -11px 16px #00000080,inset 7px 8px 14px #ffffff4d,0 2px 8px #0006;margin:0 auto}.mat-ball.plus{display:flex;align-items:center;justify-content:center;font-size:26px;color:#c7cfdd;background:#232b3a;box-shadow:inset 0 0 0 2px #3a4558,0 2px 8px #0000004d}.mat-ball.big{width:128px;height:128px;box-shadow:inset -18px -24px 34px #0000008c,inset 14px 18px 30px #ffffff52,0 6px 20px #00000080}.mat-grid.lib{display:grid;grid-template-columns:repeat(auto-fill,minmax(66px,1fr));gap:8px}.mat-grid.lib .mat-sw{background:none;border:none;cursor:pointer;padding:4px;border-radius:10px}.mat-grid.lib .mat-sw:hover{background:#ffffff0f}.mat-grid.lib .mat-nm{display:block;text-align:center;font-size:11px;color:#c7cfdd;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
