*{box-sizing:border-box}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#151817;--panel:#202524;--panel-2:#262c2a;--panel-3:#171b1a;--line:#394340;--line-strong:#66736f;--text:#eef3f1;--muted:#a9b5b1;--accent:#70d5c5;--accent-2:#f6c85f;--danger:#d96355}html,body,#root{width:100%;height:100%;overflow:hidden}html{height:100dvh}body{color:var(--text);background:var(--bg);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{-webkit-user-select:none;user-select:none}.project-home{background:#090b0b;grid-template-columns:232px minmax(0,1fr);width:100%;height:100vh;min-height:0;display:grid;overflow:hidden}.project-sidebar{background:#0d0f0f;border-right:1px solid #292d2c;padding:18px 12px}.project-brand{background:#171b1a;border:1px solid #3c4542;border-radius:7px;align-items:center;gap:11px;min-height:66px;padding:0 10px;display:flex}.project-brand-logo{object-fit:cover;width:100%;max-width:190px;height:48px;display:block}.project-brand-mark,.project-heading-mark{color:#101312;background:var(--accent);flex:none;place-items:center;font-size:12px;font-weight:950;display:inline-grid}.project-brand-mark{border-radius:6px;width:30px;height:30px}.project-brand>span:last-child{gap:2px;display:grid}.project-brand strong{font-size:14px}.project-brand small{color:#7f8b87;font-size:9px;font-weight:800}.project-nav{gap:8px;margin-top:28px;display:grid}.project-nav button{color:#aab3b0;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:12px;width:100%;height:46px;padding:0 16px;font-size:14px;font-weight:700;display:flex}.project-nav button:hover{color:var(--text);background:#171a19}.project-nav button.active{color:#101312;background:var(--accent);border-color:#70d5c585}.project-main{grid-template-rows:84px minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.project-header{background:#111313;border-bottom:1px solid #292d2c;justify-content:space-between;align-items:center;gap:18px;padding:0 34px;display:flex}.project-heading,.project-header-actions{align-items:center;display:flex}.project-heading{gap:12px;min-width:0}.project-heading-logo{object-fit:cover;flex:none;width:130px;height:38px;display:block}.project-heading-mark{border-radius:5px;width:28px;height:28px}.project-heading strong{color:#f1f4f3;text-overflow:ellipsis;white-space:nowrap;font-size:18px;overflow:hidden}.project-heading small{color:#87928e;border-left:1px solid #343a38;padding-left:12px}.project-header-actions{gap:10px}.account-login-button,.user-account-chip{color:#e9efed;background:#1b201e;border:1px solid #46504d;border-radius:8px;align-items:center;min-height:38px;display:inline-flex}.account-login-button{cursor:pointer;gap:7px;padding:0 13px;font-weight:800}.account-login-button:hover{border-color:var(--accent);color:var(--accent)}.user-account-chip{gap:9px;padding:5px 6px 5px 11px}.user-account-chip>span{min-width:70px;line-height:1.2;display:grid}.user-account-chip strong{font-size:12px}.user-account-chip small{color:#8f9a96;font-size:10px}.user-account-chip button{color:#9aa5a1;cursor:pointer;background:#2a302e;border:0;border-radius:6px;place-items:center;width:29px;height:29px;display:grid}.user-account-chip button:hover{color:var(--accent);background:#263b37}.user-account-chip button:disabled{cursor:wait;opacity:.55}.user-account-chip button:last-child:hover{color:#ffaaa1;background:#452724}.support-contact-wrap{position:relative}.support-contact-button{color:#e9efed;cursor:pointer;background:#1b201e;border:1px solid #46504d;border-radius:8px;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-weight:800;display:inline-flex}.support-contact-button:hover{border-color:var(--accent);color:var(--accent)}.support-popover{z-index:90;color:#e9efed;text-align:center;background:#171c1a;border:1px solid #40504b;border-radius:10px;gap:9px;width:210px;padding:14px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 20px 48px #00000061}.support-popover img{object-fit:contain;background:#fff;border-radius:8px;width:168px;height:168px;margin:0 auto}.support-qr-empty{color:#9aa5a1;background:#101412;border:1px dashed #43504c;border-radius:8px;place-items:center;width:168px;height:168px;margin:0 auto;font-size:12px;font-weight:800;display:grid}.support-popover strong{font-size:14px}.support-popover small{color:#9aa5a1;line-height:1.5}.user-auth-backdrop{z-index:5000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040706c2;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.user-auth-dialog{background:#171b1a;border:1px solid #3a4441;border-radius:16px;gap:14px;width:min(420px,100%);padding:30px;display:grid;position:relative;box-shadow:0 28px 80px #00000080}.user-auth-logo{justify-content:center;display:flex}.user-auth-logo img{object-fit:cover;width:165px;height:48px}.user-auth-dialog h2{text-align:center;margin:0 0 2px;font-size:21px}.user-auth-dialog label{color:#b9c3bf;gap:7px;font-size:12px;font-weight:800;display:grid}.user-auth-dialog input{color:#f3f6f5;background:#0f1211;border:1px solid #434c49;border-radius:8px;outline:0;height:43px;padding:0 12px}.user-auth-dialog input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #70d5c51f}.user-auth-tabs{background:#0d100f;border-radius:9px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.user-auth-tabs button{color:#89938f;cursor:pointer;background:0 0;border:0;border-radius:7px;height:35px;font-weight:800}.user-auth-tabs button.active{color:#101312;background:var(--accent)}.user-auth-submit{color:#101312;background:var(--accent);cursor:pointer;border:0;border-radius:8px;height:44px;font-weight:900}.user-auth-submit:disabled{cursor:wait;opacity:.65}.user-auth-error{color:#ffaaa1;background:#2b1715;border:1px solid #693b36;border-radius:7px;padding:9px 11px;font-size:12px}.user-auth-close{color:#89938f;cursor:pointer;background:0 0;border:0;border-radius:7px;width:32px;height:32px;font-size:22px;position:absolute;top:10px;right:10px}.user-auth-close:hover{color:#fff;background:#2b312f}.user-auth-loading{color:#8f9a96;background:#0d100f;place-content:center;justify-items:center;gap:12px;min-height:100vh;font-size:13px;display:grid}.user-auth-loading img{object-fit:cover;width:190px;height:55px}.redeem-card-backdrop{z-index:5000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040706c2;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.redeem-card-dialog{color:#edf3f0;background:#171b1a;border:1px solid #3a4441;border-radius:12px;gap:14px;width:min(420px,100%);padding:22px;display:grid;box-shadow:0 28px 80px #00000080}.redeem-card-title{justify-content:space-between;align-items:center;display:flex}.redeem-card-title strong{font-size:18px}.redeem-card-title button{color:#aeb7b4;cursor:pointer;background:#292e2c;border:0;border-radius:7px;width:30px;height:30px;font-size:20px}.redeem-card-dialog label{color:#b9c3bf;font-size:13px;font-weight:800}.redeem-card-dialog input{color:#f3f7f5;width:100%;height:43px;font:inherit;background:#111514;border:1px solid #4a5350;border-radius:8px;outline:none;padding:0 12px}.redeem-card-dialog input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #70d5c524}.redeem-card-error,.redeem-card-success{border-radius:7px;padding:9px 11px;font-size:12px}.redeem-card-error{color:#ffaaa1;background:#2b1715;border:1px solid #693b36}.redeem-card-success{color:#99f0df;background:#122c27;border:1px solid #31584e}.redeem-card-actions{justify-content:flex-end;gap:9px;padding-top:4px;display:flex}.redeem-card-actions button{color:#dbe3e0;cursor:pointer;background:#292e2c;border:1px solid #454d4a;border-radius:7px;min-width:86px;height:36px;font-weight:800}.redeem-card-actions button[type=submit]{color:#10201d;border-color:var(--accent);background:var(--accent)}.redeem-card-actions button:disabled{opacity:.45;cursor:not-allowed}.api-mode-chip{color:#9de5d9;white-space:nowrap;background:#10201d;border:1px solid #70d5c58c;border-radius:7px;align-items:center;height:36px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.api-mode-chip.offline{color:#ee9a90;background:#251413;border-color:#d963558c}.project-search{color:#87928e;background:#0e1110;border:1px solid #46504d;border-radius:7px;align-items:center;gap:8px;width:220px;height:36px;padding:0 11px;display:flex}.project-search:focus-within{border-color:var(--accent)}.project-search input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-size:13px}.project-search input::placeholder{color:#6e7875}.project-refresh,.project-create-button{cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;height:36px;display:inline-flex}.project-refresh{color:#aeb7b4;background:#202523;width:36px}.project-refresh:hover{color:#fff;background:#2c3330}.project-create-button{color:#101312;background:var(--accent);gap:7px;padding:0 15px;font-size:13px;font-weight:900}.project-create-button:hover{background:#8be1d4}.project-content{background-color:#090b0b;background-image:radial-gradient(circle,#303533 1px,#0000 1px);background-size:18px 18px;min-width:0;min-height:0;padding:28px 36px;overflow:auto}.project-content.script-library-content{background:#0b0d0d;padding:0;overflow:hidden}.storyboard-studio-frame{background:#0b0d0d;border:0;width:100%;height:100%;display:block}.project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,310px));align-items:start;gap:18px;display:grid}.project-card{min-width:0;height:246px;color:var(--text);cursor:pointer;text-align:left;background:#171a19;border:1px solid #343938;border-radius:7px;grid-template-rows:190px 56px;padding:0;display:grid;overflow:hidden}.project-card-shell{min-width:0;height:246px;position:relative}.project-card-shell .project-card{width:100%}.project-card-delete{z-index:2;color:#aeb7b4;cursor:pointer;opacity:.72;background:#151918eb;border:1px solid #454b49;border-radius:7px;justify-content:center;align-items:center;width:34px;height:34px;transition:opacity .12s,color .12s,border-color .12s,background .12s;display:inline-flex;position:absolute;top:10px;right:10px}.project-card-shell:hover .project-card-delete,.project-card-delete:focus-visible{opacity:1}.project-card-delete:hover{color:#ffd7d2;background:#512d29;border-color:#b85e54}.project-card:hover{border-color:var(--accent);box-shadow:0 0 0 1px #70d5c52e}.project-card-preview{color:#69736f;background:#111413;place-items:center;min-width:0;min-height:0;display:grid}.new-project-card .project-card-preview svg{border:2px solid #68726e;border-radius:50%;padding:8px;overflow:visible}.saved-project-card .project-card-preview{background:#141817}.saved-project-card:hover .project-card-preview{color:var(--accent)}.project-card-info{border-top:1px solid #303533;align-content:center;gap:4px;min-width:0;padding:0 14px;display:grid}.project-card-info strong,.project-card-info small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-card-info strong{font-size:13px}.project-card-info small{color:#89938f;font-size:11px}.project-empty-search{color:#77817d;place-items:center;min-height:246px;font-size:13px;display:grid}.create-project-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#030605b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.create-project-dialog{color:#edf3f0;background:#1b1f1e;border:1px solid #414946;border-radius:12px;gap:14px;width:min(420px,100%);padding:20px;display:grid;box-shadow:0 24px 70px #0000008c}.create-project-dialog-title{justify-content:space-between;align-items:center;display:flex}.create-project-dialog-title strong{font-size:18px}.create-project-dialog-title button{color:#aeb7b4;cursor:pointer;background:#292e2c;border:0;border-radius:7px;width:30px;height:30px;font-size:20px}.create-project-dialog label{color:#b9c3bf;font-size:13px;font-weight:800}.create-project-dialog input{color:#f3f7f5;width:100%;height:42px;font:inherit;background:#111514;border:1px solid #4a5350;border-radius:8px;outline:none;padding:0 12px}.create-project-dialog input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #70d5c524}.create-project-dialog-actions{justify-content:flex-end;gap:9px;padding-top:4px;display:flex}.create-project-dialog-actions button{color:#dbe3e0;cursor:pointer;background:#292e2c;border:1px solid #454d4a;border-radius:7px;min-width:86px;height:36px;font-weight:800}.create-project-dialog-actions button[type=submit]{color:#10201d;border-color:var(--accent);background:var(--accent)}.create-project-dialog-actions button:disabled{opacity:.45;cursor:not-allowed}.project-section-empty{color:#69736f;align-content:center;place-items:center;gap:12px;min-height:300px;display:grid}.project-section-empty strong{color:#929c98;font-size:14px}.asset-library-upload{cursor:pointer}.asset-library-upload input{display:none}.asset-library-grid{grid-template-columns:repeat(auto-fill,minmax(220px,260px));align-items:start;gap:18px;display:grid}.asset-library-card{min-width:0;color:var(--text);background:#171a19;border:1px solid #343938;border-radius:8px;position:relative;overflow:hidden}.asset-library-delete{z-index:2;color:#d2d9d6;cursor:pointer;opacity:.76;background:#141817e6;border:1px solid #555d5a;border-radius:7px;justify-content:center;align-items:center;width:34px;height:34px;transition:opacity .12s,color .12s,border-color .12s,background .12s;display:inline-flex;position:absolute;top:10px;right:10px}.asset-library-card:hover .asset-library-delete,.asset-library-delete:focus-visible{opacity:1}.asset-library-delete:hover{color:#ffd7d2;background:#512d29;border-color:#b85e54}.asset-library-preview{background:#111413;place-items:center;height:170px;padding:10px;display:grid}.asset-library-preview img{object-fit:contain;width:100%;height:100%;display:block}.asset-library-info{border-top:1px solid #303533;gap:4px;min-width:0;padding:12px 14px;display:grid}.asset-library-info strong,.asset-library-info small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.asset-library-info strong{font-size:13px}.asset-library-info small{color:#89938f;font-size:11px}.app-shell{grid-template-columns:272px minmax(0,1fr);width:100%;height:100vh;min-height:0;display:grid;overflow:hidden}.panel{background:var(--panel);border-color:var(--line);border-style:solid;min-height:0;padding:14px;overflow:auto}.left-panel{border-width:0 1px 0 0}.right-panel{border-width:0 0 0 1px;display:none}.panel-title,.topbar,.toolbar,.action-row,.timeline-head,.task-actions{align-items:center;display:flex}.panel-title,.topbar,.timeline-head{justify-content:space-between}.panel-title{letter-spacing:0;min-height:36px;margin-bottom:12px;font-size:13px;font-weight:800}.with-gap{margin-top:20px}.reference-actions{align-items:center;gap:7px;height:36px;display:inline-flex}.reference-library-button,.reference-actions .file-button{color:#dce4e1;box-sizing:border-box;vertical-align:middle;background:#303835;border:0;border-radius:7px;justify-content:center;align-items:center;height:36px;min-height:36px;margin:0;padding:0;line-height:1;display:inline-flex}.reference-library-button{cursor:pointer;min-width:82px;font-size:13px;font-weight:800}.reference-library-button:hover{color:#101312;background:var(--accent)}.reference-actions .icon-button{align-self:center;width:36px;height:36px;min-height:36px;padding:0}.reference-actions .file-button{flex:0 0 36px;width:36px}.library-picker-backdrop{z-index:5000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040706b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.library-picker-dialog{color:#edf3f0;background:#171b1a;border:1px solid #3a4441;border-radius:12px;grid-template-rows:auto minmax(0,1fr);gap:14px;width:min(760px,100vw - 48px);max-height:min(620px,100vh - 48px);padding:18px;display:grid;box-shadow:0 28px 80px #00000080}.library-picker-title{justify-content:space-between;align-items:center;display:flex}.library-picker-title strong{font-size:17px}.library-picker-title button{color:#aeb7b4;cursor:pointer;background:#292e2c;border:0;border-radius:7px;width:30px;height:30px;font-size:20px}.library-picker-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;min-height:0;display:grid;overflow:auto}.library-picker-card{color:#edf3f0;cursor:pointer;text-align:left;background:#111514;border:1px solid #343938;border-radius:8px;grid-template-rows:118px auto;min-width:0;display:grid;overflow:hidden}.library-picker-card:hover,.library-picker-card.used:hover{border-color:var(--accent);box-shadow:0 0 0 1px #70d5c533}.library-picker-card.used{border-color:#4b5551}.library-picker-card img{object-fit:contain;background:#0d100f;width:100%;height:100%;padding:8px}.library-picker-card span{border-top:1px solid #2d3331;gap:3px;min-width:0;padding:10px;display:grid}.library-picker-card strong,.library-picker-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.library-picker-card strong{font-size:12px}.library-picker-card small{color:#8f9a96;font-size:11px}.library-picker-empty{color:#77817d;text-align:center;align-content:center;place-items:center;gap:8px;min-height:260px;display:grid}.library-picker-empty strong{color:#aeb7b4;font-size:14px}.workspace{grid-template-rows:68px minmax(340px,1fr);min-width:0;height:100%;min-height:0;display:grid}.topbar{border-bottom:1px solid var(--line);background:#1a1f1d;gap:14px;padding:12px 16px}.editor-identity{align-items:center;gap:10px;min-width:0;display:flex}.editor-identity>div{min-width:0}.editor-identity h1,.editor-identity p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}h1,p{margin:0}h1{font-size:20px;line-height:1.2}p,small{color:var(--muted);font-size:12px}.toolbar,.action-row,.task-actions{gap:8px}.canvas-account-chip{color:#edf8f5;background:#17201d;border:1px solid #40504c;border-radius:8px;align-items:center;gap:8px;min-width:178px;max-width:260px;height:38px;padding:5px 6px 5px 10px;display:inline-flex}.canvas-account-chip>span{min-width:0;line-height:1.18;display:grid}.canvas-account-chip strong,.canvas-account-chip small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.canvas-account-chip strong{font-size:12px}.canvas-account-chip small{color:#9aa9a4;font-size:10px}.canvas-account-chip button{color:#9aa9a4;cursor:pointer;background:#26302d;border:0;border-radius:6px;flex:none;place-items:center;width:28px;height:28px;display:grid}.canvas-account-chip button:hover{color:var(--accent);background:#263b37}.canvas-account-chip button:disabled{cursor:wait;opacity:.55}.canvas-wrap{background:#161a19;place-items:stretch stretch;min-width:0;min-height:0;padding:0;display:grid;overflow:hidden}.canvas-frame{border:1px solid var(--line-strong);touch-action:none;background:#101413;width:100%;height:100%;min-height:0;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #0000002e}.canvas-frame.space-pan{cursor:grab}.canvas-frame.panning{cursor:grabbing}.canvas-grid-plane{pointer-events:none;transform-origin:0 0;will-change:transform;z-index:1;background-color:#0f1312;background-image:radial-gradient(circle,#35403c 1px,#0000 1px);background-size:18px 18px;width:1000%;height:1000%;position:absolute;top:-450%;left:-450%}.canvas-viewport{transform-origin:0 0;will-change:transform;z-index:2;isolation:isolate;width:100%;height:100%;position:absolute;inset:0}.connection-layer{pointer-events:none;z-index:20;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.marquee-selection{z-index:35;border:1px solid var(--accent);pointer-events:none;background:#70d5c524;border-radius:4px;position:absolute;box-shadow:0 0 0 1px #70d5c533,0 0 18px #70d5c524}.connection-line,.connection-glow,.connection-hit-area{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.connection-glow{stroke:#aeb5bb;stroke-width:6px;opacity:.12}.connection-line{stroke:#8d959b;stroke-width:2.4px}.connection-hit-area{stroke:#0000;stroke-width:24px;pointer-events:stroke;cursor:pointer}.connection-group:hover .connection-line{stroke:#b9c0c5}.connection-group.selected .connection-line{stroke:var(--accent);stroke-width:2.7px;filter:drop-shadow(0 0 5px #70d5c56b)}.connection-group.selected .connection-glow{stroke:var(--accent);opacity:.2}.connection-delete-button{z-index:30;border:1px solid var(--accent);color:#f6ffff;cursor:pointer;background:#111918;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;font-size:15px;font-weight:900;line-height:1;display:inline-flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #111918b8}.connection-delete-button:hover,.connection-delete-button.selected{color:#101312;background:var(--accent);border-color:#d9f7f2;box-shadow:0 0 0 2px #111918b8}.menu-preview-link path{fill:none;stroke:#8fc9ff;stroke-width:.48px;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 7px #8fc9ff8c)}.menu-preview-link circle{fill:#8fc9ff}.canvas-item{color:#fff;cursor:grab;z-index:4;background:#101312;border:2px solid #0000;border-radius:4px;place-items:center;min-width:32px;min-height:28px;padding:0;display:grid;position:absolute;overflow:visible}.canvas-item:active{cursor:grabbing}.canvas-item.active{border-color:var(--accent);box-shadow:0 0 0 1px #70d5c566,0 0 16px #70d5c524}.canvas-item img{object-fit:cover;pointer-events:none;border-radius:2px;width:100%;height:100%;display:block}.canvas-item.image{background:#0d1110;display:block}.image-node-media{background:#0d1110;border-radius:2px;position:absolute;inset:0;overflow:hidden}.canvas-item.image .image-node-media img{object-fit:contain;position:absolute;inset:0}.canvas-item.image .object-label{z-index:2}.canvas-item.text{background:#121615e0;border-color:#eef3f12e}.canvas-item.text-node{cursor:grab;background:0 0;border:0;display:block}.canvas-item.text-node.active{box-shadow:none}.canvas-item.text-node.active .text-node-preview,.canvas-item.video-node.active .video-node-preview{border-color:var(--accent);box-shadow:0 0 0 1px #70d5c57a,0 0 18px #70d5c52e,inset 0 0 0 1px #ffffff0f}.text-node-shell{width:100%;height:100%;position:relative}.text-node-title{color:#aeb7b4;white-space:nowrap;align-items:center;gap:4px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;top:-22px;left:28%}.text-node-preview{background:#171918;border:2px solid #e2e5e3b8;border-radius:9px;width:52%;height:48%;position:absolute;top:0;left:24%;box-shadow:inset 0 0 0 1px #ffffff0f}.text-preview-lines{opacity:.75;background:linear-gradient(#6f7471,#6f7471) 0 0/100% 5px no-repeat,linear-gradient(#6f7471,#6f7471) 0 12px/100% 5px no-repeat,linear-gradient(#6f7471,#6f7471) 0 24px/70% 5px no-repeat;width:36px;height:30px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.text-node-prompt{color:#f2f5f3;background:#292c2b;border:1px solid #393f3d;border-radius:10px;height:28%;padding:10px 12px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 16px 34px #00000047}.text-node-prompt img,.prompt-thumb-empty{object-fit:cover;background:#151817;border-radius:6px;width:42px;height:42px}.prompt-input{color:#f3f5f4;resize:none;background:0 0;border:0;border-radius:6px;outline:none;height:58px;min-height:58px;padding:0;font-size:14px;line-height:1.35;position:absolute;top:12px;left:60px;right:12px}.prompt-input::placeholder{color:#8e9692}.prompt-footer{align-items:center;gap:12px;display:flex;position:absolute;bottom:10px;left:12px;right:10px}.prompt-model-select{color:#f3f5f4;background:0 0;border:0;outline:none;width:auto;min-width:92px;min-height:26px;margin-right:auto;padding:0 18px 0 0;font-size:12px;font-weight:800}.prompt-tools{color:#c5cbc8;font-size:12px}.prompt-submit{color:#171918;cursor:pointer;background:#f1f5f3;border:0;border-radius:9px;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;font-weight:900;display:inline-flex}.text-node-port{color:#e7ece9;cursor:crosshair;z-index:12;background:#303433;border:1px solid #ffffffb8;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:17px;line-height:1;display:inline-flex;position:absolute;top:24%}.text-node-port.left{left:calc(24% - 34px)}.text-node-port.right{right:calc(24% - 34px)}.text-node-port.waiting{color:#101312;background:var(--accent);border-color:#101312}.canvas-item.video-node{cursor:grab;background:0 0;border:0;min-width:420px;min-height:360px;display:block}.canvas-item.video-node.active{box-shadow:none}.canvas-item.video-node.active .video-node-controls{outline:1px solid #70d5c58c;box-shadow:0 0 18px #70d5c51f}.video-node-shell{grid-template-rows:53% minmax(0,43%);gap:4%;width:100%;height:100%;display:grid;position:relative}.video-node-title{color:#aeb7b4;white-space:nowrap;align-items:center;gap:4px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;top:-24px;left:6%}.video-node-preview{background:#272927;border:2px solid #e2e5e3ad;border-radius:12px;place-items:center;margin:0 6%;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0f}.video-node-preview.has-video{border-color:#70d5c5c7}.video-node-preview video{object-fit:cover;width:100%;height:100%}.video-preview-actions{z-index:2;align-items:center;gap:8px;display:flex;position:absolute;bottom:12px;right:12px}.video-preview-actions span,.video-preview-actions a{color:#eef5f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121615d1;border:1px solid #ffffff38;border-radius:7px;justify-content:center;align-items:center;gap:5px;min-height:30px;padding:0 10px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.video-preview-actions a{color:#10201d;border-color:var(--accent);background:var(--accent);cursor:pointer}.video-preview-actions a:hover{background:#91e4d8}.video-preview-error{color:#ffd2cc;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.35;position:absolute;bottom:12px;left:14px;right:14px;overflow:hidden}.video-preview-state{z-index:1;color:#c9d1ce;background:#121413b8;border:1px solid #ffffff2e;border-radius:6px;padding:3px 8px;font-size:12px;font-weight:800;position:absolute;top:12px;left:14px}.video-preview-state.error{color:#ffd2cc;background:#4a231fbf;border-color:#d9635561}.video-play-icon{color:#ffffff38}.video-node-port{color:#e7ece9;cursor:crosshair;z-index:12;background:#303433;border:1px solid #ffffffb8;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:19px;line-height:1;display:inline-flex;position:absolute;top:26.5%;transform:translateY(-50%)}.video-node-port.left{left:calc(6% - 16px)}.video-node-port.right{right:calc(6% - 16px)}.video-node-port.waiting{color:#101312;background:var(--accent);border-color:#101312}.video-node-controls{color:#f2f5f3;background:#2a2c2b;border:1px solid #3a3f3d;border-radius:10px;flex-direction:column;gap:9px;min-width:0;min-height:max-content;padding:12px 14px 10px;display:flex;position:relative;box-shadow:0 18px 42px #00000057}.video-tabs{flex-wrap:wrap;gap:6px;padding-right:36px;display:flex}.video-tab{color:#cfd6d3;cursor:pointer;background:0 0;border:1px solid #545b58;border-radius:7px;justify-content:center;align-items:center;width:auto;min-height:28px;margin:0;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.video-tab.active{color:#fff;background:#373b39;border-color:#7a8480}.video-tab.disabled{color:#777f7c;cursor:not-allowed;opacity:.72}.video-expand{color:#cfd6d3;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;position:absolute;top:12px;right:12px}.video-tools{align-items:center;gap:8px;min-height:48px;display:flex}.video-tools button{color:#d8dfdc;cursor:pointer;background:#242725;border:1px solid #4a504d;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;width:54px;min-height:48px;font-size:12px;display:inline-flex}.video-tools button.active{border-color:var(--accent);color:#101312;background:var(--accent)}.video-tools img{object-fit:cover;border-radius:7px;width:48px;height:48px}.video-reference-thumb{flex:0 0 48px;width:48px;height:48px;position:relative}.video-tools .video-reference-remove{z-index:2;color:#fff;background:#252a28;border:1px solid #7b8581;border-radius:50%;width:18px;height:18px;min-height:18px;padding:0;position:absolute;top:-5px;right:-5px;box-shadow:0 2px 6px #00000073}.video-tools .video-reference-remove:hover{color:#fff;background:#9b3f35;border-color:#ff8b7e}.video-prompt-input{color:#f3f5f4;resize:none;background:0 0;border:0;border-radius:6px;outline:none;flex:1;min-height:70px;padding:4px 2px;font-size:14px;line-height:1.45}.video-prompt-wrap{flex:1;min-width:0;min-height:70px;display:flex;position:relative}.video-prompt-wrap .video-prompt-input{width:100%}.asset-mention-menu{z-index:40;background:#1b1f1e;border:1px solid #4a514e;border-radius:9px;gap:4px;width:min(320px,100%);max-height:210px;padding:6px;display:grid;position:absolute;bottom:calc(100% + 6px);left:0;overflow:auto;box-shadow:0 14px 34px #0000007a}.asset-mention-option{color:#e8efec;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:6px;display:grid}.asset-mention-option:hover{background:#303633}.asset-mention-option img{object-fit:cover;border-radius:5px;width:44px;height:36px}.asset-mention-option span{gap:3px;min-width:0;display:grid}.asset-mention-option strong,.asset-mention-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.asset-mention-option strong{color:var(--accent);font-size:12px}.asset-mention-option small,.asset-mention-empty{color:#a3aca8;font-size:11px}.asset-mention-empty{text-align:center;padding:12px}.video-prompt-input::placeholder{color:#929a96}.video-footer{border-top:1px solid #3a403d;grid-template-columns:minmax(92px,126px) minmax(0,1fr) minmax(96px,auto) auto 34px;align-items:center;gap:8px;min-height:38px;padding-top:8px;display:grid}.video-model-select,.video-count-select{color:#f3f5f4;background:#202322;border:1px solid #4b5350;border-radius:7px;width:auto;min-height:32px;font-size:12px;font-weight:800}.video-format-wrap{min-width:0;display:inline-flex;position:relative}.video-format{color:#e7ece9;white-space:nowrap;cursor:pointer;background:#202322;border:1px solid #454c49;border-radius:7px;align-items:center;gap:7px;min-height:32px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.video-format.active,.video-format:hover{background:#303432;border-color:#9ca6a2}.video-format span{color:#99a29e;font-size:11px}.video-price-chip{color:#9af0de;white-space:nowrap;background:#70d5c51a;border:1px solid #70d5c57a;border-radius:7px;justify-content:center;align-items:center;min-height:32px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.video-format-panel{z-index:24;color:#e9efec;background:#282b2a;border:1px solid #3d4341;border-radius:12px;width:330px;padding:14px;position:absolute;bottom:44px;left:0;box-shadow:0 22px 48px #00000075}.format-section{gap:8px;margin-bottom:12px;display:grid}.format-section:last-child{margin-bottom:0}.format-title{color:#aeb7b4;font-size:13px;font-weight:800}.ratio-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.ratio-option,.resolution-options button,.audio-options button{color:#dce4e1;cursor:pointer;background:#252827;border:1px solid #4d5552;border-radius:7px;font-size:12px;font-weight:800}.ratio-option{place-items:center;gap:7px;min-height:64px;display:grid}.ratio-option i{border:1px solid;border-radius:2px;width:16px;height:10px;display:block}.ratio-option i[data-ratio=Auto]{width:14px;height:8px}.ratio-option i[data-ratio="4:3"]{width:14px;height:11px}.ratio-option i[data-ratio="1:1"]{width:11px;height:11px}.ratio-option i[data-ratio="3:4"]{width:10px;height:14px}.ratio-option i[data-ratio="9:16"]{width:8px;height:16px}.ratio-option i[data-ratio="21:9"]{width:20px;height:8px}.ratio-option.active,.resolution-options button.active,.audio-options button.active{color:#fff;background:#3a3e3c;border-color:#eef3f1;box-shadow:inset 0 0 0 1px #ffffff14}.resolution-options,.audio-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.audio-options{grid-template-columns:repeat(2,minmax(0,1fr))}.resolution-options button,.audio-options button{min-height:32px}.format-row{justify-content:space-between;align-items:center;display:flex}.format-row strong{color:#cfd8d5;font-size:12px}.duration-section input[type=range]{accent-color:#5baaff;background:0 0;border:0;width:100%;min-height:22px;padding:0}.duration-section input[type=range]:disabled{cursor:not-allowed;opacity:.7}.video-count-select{min-width:66px}.video-submit{color:#171918;cursor:pointer;background:#f1f5f3;border:0;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;font-size:20px;font-weight:900;display:inline-flex}.video-submit:disabled{opacity:.58;cursor:wait}.canvas-item.shape{background:#70d5c51f;border:1px dashed #70d5c5d1}.shape-icon{color:var(--accent)}.note-text{width:100%;height:100%;color:var(--text);text-align:center;place-items:center;padding:8px;font-size:clamp(10px,1.3vw,16px);line-height:1.2;display:grid}.object-label{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#000000a3;border-radius:4px;max-width:calc(100% - 16px);padding:4px 6px;font-size:11px;line-height:1.2;position:absolute;bottom:8px;left:8px;overflow:hidden}.resize-handle{background:var(--accent);cursor:nwse-resize;border-top:2px solid #101312;border-left:2px solid #101312;width:14px;height:14px;position:absolute;bottom:0;right:0}.connect-handle{color:#101312;background:var(--accent);cursor:crosshair;z-index:12;border:2px solid #101312;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:absolute;top:50%;right:-17px;transform:translateY(-50%)}.connect-handle.waiting{background:var(--accent-2)}.connect-handle:hover{box-shadow:0 0 0 6px #70d5c52e}.node-generation-menu{width:196px;color:var(--text);z-index:12;background:#272a29;border:1px solid #3a4240;border-radius:14px;padding:14px 12px 12px;position:absolute;transform:translate(10px,10px);box-shadow:0 18px 42px #00000061}.node-menu-title{color:#cdd6d3;padding:0 4px 10px;font-size:13px}.node-menu-list{gap:2px;display:grid}.node-menu-item{min-height:34px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 7px;display:grid}.node-menu-item:hover{background:#ffffff12}.node-menu-item span{font-size:14px;font-weight:700}.node-menu-item em{color:#8fb7bd;background:#3a3f3f;border-radius:4px;padding:2px 5px;font-size:10px;font-style:normal;font-weight:800}.node-menu-item strong{color:var(--muted);font-size:16px}.node-menu-item.disabled{color:#737b78;cursor:not-allowed}.node-menu-item.disabled:hover{background:0 0}.shot-list,.asset-list{gap:9px;display:grid}.shot-row,.asset-row{border:1px solid var(--line);width:100%;color:var(--text);background:var(--panel-2);text-align:left;cursor:pointer;border-radius:7px}.shot-row{grid-template-columns:34px minmax(0,1fr);gap:6px 8px;min-height:64px;padding:10px;display:grid}.shot-row span{color:#121514;background:var(--accent);border-radius:4px;grid-row:span 2;place-items:center;width:30px;height:30px;font-size:12px;font-weight:900;display:grid}.shot-row strong,.asset-row strong,.task-card strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.shot-row small{grid-column:2}.asset-row{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:10px;min-height:66px;padding:8px;display:grid}.shot-row.selected,.asset-row.selected{border-color:var(--accent)}.asset-row img{object-fit:cover;border-radius:5px;width:64px;height:48px}.asset-row span{gap:4px;min-width:0;display:grid}.file-button input{display:none}.tabs{border:1px solid var(--line);background:var(--panel-3);border-radius:7px;grid-template-columns:repeat(3,1fr);height:38px;margin-bottom:14px;padding:3px;display:grid}.tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px}.tab.active{color:#101312;background:var(--accent);font-weight:800}.api-status{border:1px solid var(--line);background:var(--panel-3);border-radius:7px;justify-content:space-between;align-items:center;gap:10px;min-height:58px;margin-bottom:14px;padding:10px;display:flex}.api-status div:first-child{gap:4px;min-width:0;display:grid}.api-status strong{font-size:13px}.api-status span{color:var(--muted);font-size:12px}.api-badges{gap:6px;display:flex}.badge{border:1px solid var(--line);min-width:42px;height:24px;color:var(--muted);background:#222826;border-radius:999px;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.badge.ok{color:#101312;background:var(--accent);border-color:#0000;font-weight:800}label{color:#cdd7d3;gap:6px;margin:0 0 11px;font-size:12px;display:grid}input,select,textarea{width:100%;min-height:36px;color:var(--text);background:#151918;border:1px solid #3d4744;border-radius:6px;outline:none;padding:8px 10px}input:focus,select:focus,textarea:focus{border-color:var(--accent)}textarea{resize:vertical;min-height:68px}.settings-grid,.xy-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.assembled-prompt,.selected-note,.preview-empty{border:1px solid var(--line);color:#dbe4e1;background:var(--panel-3);border-radius:7px;margin:12px 0;padding:10px;font-size:12px;line-height:1.48}.timeline{border-top:1px solid var(--line);background:#1a1f1d;grid-template-rows:auto minmax(0,1fr);gap:10px;min-height:0;padding:12px 16px;display:none;overflow:auto}.timeline-head{height:26px;color:var(--text);font-size:13px}.timeline-head span{color:var(--muted);font-size:12px}.task-card,.empty-task{border:1px solid var(--line);background:var(--panel-2);border-radius:7px;grid-template-columns:minmax(0,1fr) 158px;align-items:center;gap:14px;min-height:78px;padding:10px 12px;display:grid}.task-card p{text-overflow:ellipsis;white-space:nowrap;margin-top:6px;overflow:hidden}.task-card video,.preview video{object-fit:cover;background:#0f1211;border-radius:5px;width:120px;height:68px}.empty-task{color:var(--muted);grid-template-columns:1fr}.status{color:#111514;background:#b8c2be;border-radius:999px;justify-content:center;align-items:center;width:72px;height:22px;margin-right:8px;font-size:11px;font-weight:900;display:inline-flex}.status.succeeded{background:var(--accent)}.status.failed{background:var(--danger)}.status.running{background:var(--accent-2)}.icon-button,.primary-button,.secondary-button,.danger-button,.download-link{cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;height:36px;text-decoration:none;display:inline-flex}.icon-button{color:#dce4e1;background:#303835;flex:none;width:36px}.icon-button:hover,.secondary-button:hover,.download-link:hover{background:#3a4541}.active-tool{color:#101312;background:var(--accent)}.primary-button{color:#101312;background:var(--accent);padding:0 14px;font-weight:900}.secondary-button,.danger-button,.download-link{color:var(--text);background:#303835;padding:0 10px;font-size:13px}.danger-button{background:#61332f}.inspector,.preview{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.preview video{aspect-ratio:16/9;width:100%;height:auto}.preview-empty{min-height:116px;color:var(--muted);place-items:center;display:grid}@media (width<=1180px){.project-header{padding:0 20px}.project-search{width:180px}.project-content{padding:24px}.app-shell{grid-template-columns:232px minmax(0,1fr)}}@media (width<=920px){.project-home{grid-template-columns:72px minmax(0,1fr)}.project-sidebar{padding:12px 8px}.project-brand{justify-content:center;padding:0}.project-brand>span:last-child{display:none}.project-nav button{justify-content:center;padding:0;font-size:0}.project-main{grid-template-rows:auto minmax(0,1fr)}.project-header{flex-direction:column;align-items:stretch;gap:10px;padding:12px 16px}.project-header-actions{width:100%}.project-search{flex:auto;width:auto}.api-mode-chip{display:none}.project-content{padding:16px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.app-shell{flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden auto}.workspace{order:-1;grid-template-rows:auto minmax(280px,56vh);min-height:72vh}.left-panel,.right-panel{border-width:1px 0 0}.topbar,.toolbar{flex-wrap:wrap}.canvas-wrap{padding:14px}.task-card{grid-template-columns:1fr}.task-actions{justify-content:flex-start}}@media (width<=640px){button,input,select,textarea{font-size:16px}.project-home{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;height:100dvh}.project-sidebar{z-index:10;border-bottom:1px solid #292d2c;border-right:0;align-items:center;gap:8px;padding:8px;display:flex}.project-brand{flex:0 0 48px;min-height:44px;overflow:hidden}.project-brand-logo{object-fit:cover;object-position:left;width:44px;max-width:none;height:38px}.project-nav{flex:1;gap:5px;margin-top:0;display:flex}.project-nav button{flex:1;height:44px;padding:0 6px;font-size:0}.project-main{grid-template-rows:auto minmax(0,1fr)}.project-header{gap:8px;padding:10px 12px}.project-heading-logo,.project-heading small{display:none}.project-heading strong{font-size:16px}.project-header-actions{flex-wrap:wrap}.project-search{flex-basis:100%;order:-1}.support-contact-button,.account-login-button,.project-create-button,.asset-library-upload{flex:auto;justify-content:center}.user-account-chip{max-width:100%}.project-content{padding:12px}.project-grid,.asset-library-grid{grid-template-columns:1fr}.app-shell{height:100dvh}.workspace{grid-template-rows:auto minmax(300px,1fr);min-height:68dvh}.topbar{align-items:stretch;gap:10px;padding:10px}.editor-identity{width:100%}.editor-identity h1{font-size:16px}.editor-identity p{display:none}.toolbar{scrollbar-width:thin;flex-wrap:nowrap;width:100%;padding-bottom:3px;overflow-x:auto}.toolbar>*{flex:none}.canvas-account-chip{min-width:142px;max-width:170px}.canvas-wrap{min-height:300px;padding:8px}.canvas-frame{touch-action:none;min-height:284px}.panel{padding:12px}.library-picker-backdrop{padding:10px}.library-picker-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:12px}.library-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-card,.generation-task-card{min-width:0}}@media (width<=380px){.library-picker-grid{grid-template-columns:1fr}.project-header-actions{flex-direction:column;align-items:stretch}}
