.s3{box-sizing:border-box;width:100%;max-width:1480px;color:var(--tx);flex-direction:column;gap:14px;min-height:100%;margin:0 auto;padding:18px 24px 32px;display:flex}.s3-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.s3-head h1{letter-spacing:-.01em;margin:0 0 4px;font-size:26px}.s3-head p{color:var(--tx2);max-width:760px;margin:0;font-size:13px;line-height:1.5}.s3-status{flex-wrap:wrap;gap:8px;display:flex}.s3-pill{border:1px solid var(--line);background:var(--s1);color:var(--tx2);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:6px 11px;font-size:12px;display:inline-flex}.s3-pill i{background:#ffb36b;border-radius:50%;width:7px;height:7px}.s3-pill[data-ok] i{background:var(--accent);box-shadow:0 0 8px var(--accent-32)}.s3-grid{flex:1;grid-template-columns:minmax(0,1fr) 360px;gap:16px;min-height:0;display:grid}@media (max-width:1100px){.s3-grid{grid-template-columns:1fr}}.s3-stage{border:1px solid var(--line);background:#111214;border-radius:16px;height:calc(100vh - 205px);min-height:520px;max-height:960px;position:relative;overflow:hidden}.s3-stage[data-drag]{outline:2px dashed var(--accent);outline-offset:-8px}.s3-stage-gl{position:absolute;inset:0}.s3-stage-gl canvas{cursor:grab;display:block}.s3-stage-gl canvas:active{cursor:grabbing}.s3-empty{text-align:center;pointer-events:none;color:var(--tx2);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;font-size:13px;display:flex;position:absolute;inset:0}.s3-empty strong{color:var(--tx);font-size:16px}.s3-warn{color:#ffb36b}.s3-empty-cube{width:64px;height:64px;transform-style:preserve-3d;margin-bottom:10px;animation:9s linear infinite s3-spin;position:relative}.s3-empty-cube span{border:1.5px solid var(--accent);opacity:.55;border-radius:10px;position:absolute;inset:0}.s3-empty-cube span:nth-child(2){opacity:.35;transform:rotateY(60deg)}.s3-empty-cube span:nth-child(3){opacity:.25;transform:rotateY(120deg)}@keyframes s3-spin{0%{transform:rotateX(18deg)rotateY(0)}to{transform:rotateX(18deg)rotateY(360deg)}}.s3-busy{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);color:var(--tx);background:#0a0a0cc7;border-radius:14px;flex-direction:column;align-items:center;gap:10px;min-width:240px;padding:18px 22px;font-size:13px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.s3-spin{border:2px solid var(--line-2);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite s3-rot}@keyframes s3-rot{to{transform:rotate(360deg)}}.s3-bar{background:var(--s3);border-radius:4px;width:100%;height:4px;overflow:hidden}.s3-bar i{background:var(--accent);height:100%;transition:width .3s;display:block}.s3-tools{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);background:#0c0c0eb8;border-radius:12px;flex-wrap:wrap;align-items:center;gap:4px;max-width:calc(100% - 24px);padding:5px;display:flex;position:absolute;top:12px;left:12px}.s3-tools button{color:var(--tx2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:5px 9px;font-size:12px}.s3-tools button:hover:not(:disabled){background:var(--s3);color:var(--tx)}.s3-tools button[data-on]{background:var(--accent-14);color:var(--accent)}.s3-tools button:disabled{opacity:.4;cursor:default}.s3-sep{background:var(--line-2);width:1px;height:18px;margin:0 3px}.s3-depth{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);color:var(--tx2);background:#0c0c0eb8;border-radius:12px;align-items:center;gap:10px;padding:8px 14px;font-size:12px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.s3-depth input{width:200px;accent-color:var(--accent)}.s3-meta{color:var(--tx3);background:#0c0c0e99;border-radius:8px;padding:4px 8px;font-size:11.5px;position:absolute;bottom:12px;right:12px}.s3-side{flex-direction:column;gap:12px;min-width:0;max-height:calc(100vh - 205px);padding-right:2px;display:flex;overflow-y:auto}@media (max-width:1100px){.s3-side{max-height:none}.s3-stage{height:62vh}}.s3-tabs{background:var(--s1);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.s3-tabs button{color:var(--tx2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:8px 6px;font-size:12.5px}.s3-tabs button[data-on]{background:var(--s3);color:var(--tx);font-weight:600}.s3-card{border:1px solid var(--line);background:var(--s1);border-radius:14px;flex-direction:column;gap:9px;padding:14px;font-size:13px;display:flex}.s3-card>strong{font-size:13.5px}.s3-setup{border-color:var(--accent-32);background:var(--accent-08)}.s3-setup span{color:var(--tx2);line-height:1.45}.s3-drop{border:1.5px dashed var(--line-2);cursor:pointer;text-align:center;border-radius:12px;flex-direction:column;gap:4px;padding:18px 14px;transition:border-color .15s,background .15s;display:flex;position:relative}.s3-drop:hover{border-color:var(--accent-32);background:var(--accent-08)}.s3-drop input{opacity:0;cursor:pointer;position:absolute;inset:0}.s3-drop span{color:var(--tx3);font-size:12px;line-height:1.45}.s3-label{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);margin-top:2px;font-size:11px;font-weight:600}.s3-thumbs{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.s3-thumbs button{border:1px solid var(--line);aspect-ratio:1;cursor:pointer;background:var(--s2);border-radius:8px;padding:0;overflow:hidden}.s3-thumbs button:hover{border-color:var(--accent)}.s3-thumbs img{object-fit:cover;width:100%;height:100%;display:block}.s3-prompt{box-sizing:border-box;resize:vertical;border:1px solid var(--line);background:var(--s2);width:100%;min-height:84px;color:var(--tx);font:inherit;border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.45}.s3-prompt:focus:not(:focus-visible){border-color:var(--accent-32);outline:none}.s3-note{color:var(--tx3);font-size:12px;line-height:1.45}.s3-note a{color:var(--accent)}.s3-chips{flex-wrap:wrap;gap:5px;display:flex}.s3-chips button{border:1px solid var(--line);background:var(--s2);color:var(--tx2);font:inherit;cursor:pointer;border-radius:999px;padding:6px 10px;font-size:12px}.s3-chips button:hover{color:var(--tx);border-color:var(--line-2)}.s3-chips button[data-on]{border-color:var(--accent-32);background:var(--accent-14);color:var(--accent)}.s3-row{grid-template-columns:auto 1fr;gap:14px;display:grid}.s3-row>div{flex-direction:column;gap:6px;display:flex}.s3-render-head{justify-content:space-between;align-items:center;display:flex}.s3-render-head strong{font-size:13.5px}.s3-acts{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.s3-btn{border:1px solid var(--line-2);background:var(--s2);color:var(--tx);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:9px 14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.s3-btn:hover:not(:disabled){background:var(--s3)}.s3-btn:disabled{opacity:.45;cursor:not-allowed}.s3-primary{background:var(--accent);color:var(--accent-ink,#0a0a0a);border-color:#0000}.s3-primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.06)}.s3-ghost{background:0 0}.s3-link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:none}.s3-result{flex-direction:column;gap:6px;display:flex}.s3-result video{background:#000;border-radius:10px;width:100%}.s3-result-row{color:var(--tx2);align-items:center;gap:10px;font-size:12px;display:flex}.s3-result-row span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.s3-error{color:#ff9b9b;background:#ff5a5a1a;border:1px solid #ff5a5a4d;border-radius:10px;margin:0;padding:10px 12px;font-size:12.5px}.s3-foot{color:var(--tx3);margin:0;font-size:11.5px;line-height:1.5}.s3-toast{background:var(--s3);border:1px solid var(--line-2);color:var(--tx);z-index:50;border-radius:12px;padding:10px 16px;font-size:13px;position:fixed;bottom:86px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0008}.s3-kinds{flex-direction:column;gap:6px;display:flex}.s3-kinds button{text-align:left;border:1px solid var(--line);background:var(--s2);color:var(--tx);font:inherit;cursor:pointer;border-radius:10px;flex-direction:column;gap:2px;padding:9px 12px;display:flex}.s3-kinds button b{font-size:13px;font-weight:600}.s3-kinds button span{color:var(--tx3);font-size:11.5px}.s3-kinds button:hover{border-color:var(--line-2)}.s3-kinds button[data-on]{border-color:var(--accent-32);background:var(--accent-08)}.s3-kinds button[data-on] b{color:var(--accent)}.s3-kinds button[data-off]{opacity:.6}.s3-kinds button[data-off] span{color:#ffb36b}.s3-setup-in{background:var(--accent-08);border:1px solid var(--accent-32);border-radius:10px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.s3-setup-in span{color:var(--tx2);font-size:12px;line-height:1.45}.s3-ref{border:1px dashed var(--line-2);border-radius:12px;flex-direction:column;gap:8px;margin-top:6px;padding:12px;display:flex}.s3-refrow{color:var(--tx2);align-items:center;gap:12px;font-size:12px;display:flex}.s3-refrow label{align-items:center;gap:6px;display:inline-flex}.s3-refrow input{width:76px;font:inherit;border:1px solid var(--line);background:var(--s2);color:var(--tx);border-radius:8px;padding:6px 8px;font-size:12px}.s3-refdone{flex-direction:column;gap:4px;display:flex}.s3-angles{flex-direction:column;gap:6px;display:flex}.s3-angleprompt{color:var(--tx2);align-items:center;gap:8px;font-size:12px;display:flex}.s3-angleprompt span{min-width:92px;color:var(--tx3)}.s3-angleprompt input{min-width:0;font:inherit;border:1px solid var(--line);background:var(--s2);color:var(--tx);border-radius:8px;flex:1;padding:6px 8px;font-size:12px}.s3-angleset{border:1px solid var(--line);background:var(--s2);border-radius:10px;flex-direction:column;gap:6px;padding:8px;display:flex}.s3-angleset-strip{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.s3-angleset-strip img{aspect-ratio:1;object-fit:cover;background:#000;border-radius:6px;width:100%}.s3-angleset-row{color:var(--tx2);align-items:center;gap:10px;font-size:12px;display:flex}.s3-angleset-row span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.s3-empty-cube,.s3-spin{animation:none}.s3-drop{transition:none}}
