@font-face{font-family:system;src:local("SF Pro Display")}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body{font:14px system,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;color:#e8eceb;background:#121519}button,input{font:inherit}button{color:inherit;cursor:pointer;border:0}button:focus-visible,input:focus-visible{outline:2px solid #b2efbb;outline-offset:3px}button{transition:background .15s,color .15s}button:hover{background:#343b40!important}button:disabled{cursor:default;opacity:.4}kbd{font:10px ui-monospace,monospace;color:#8f9699;border:1px solid #454b4f;border-radius:3px;padding:1px 4px}.topbar{height:76px;border-bottom:1px solid #2c3035;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#181c20;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600;letter-spacing:1px}.brand-icon{color:#b2efbb;font-size:40px;font-weight:300}.brand-caption{display:block;font:9px ui-monospace,monospace;letter-spacing:2px;color:#858d91;margin-top:4px}.top-caption{color:#939c9f;font-size:12px;margin-left:auto;margin-right:28px}.online{font-size:11px;color:#b5bebd;display:flex;gap:8px;align-items:center}.online i,.view-label i{width:5px;height:5px;background:#b2efbb;border-radius:50%}.workspace{height:calc(100% - 76px);display:flex}.library{width:258px;flex-shrink:0;background:#1b2024;border-right:1px solid #30353a;display:flex;flex-direction:column;padding:25px 16px 0}.library-heading{display:flex;align-items:center;justify-content:space-between;padding:0 8px 20px}.library-heading h2{font-size:15px;font-weight:500;margin:0}.library-heading>span{font:11px ui-monospace,monospace;color:#c4cecb;background:#30383b;border-radius:5px;padding:4px 8px}.search{display:flex;align-items:center;gap:8px;background:#14191d;border:1px solid #30373b;border-radius:7px;padding:9px 10px}.search>span{font-size:21px;color:#a8b3b5;line-height:14px}.search input{min-width:0;width:100%;border:0;background:transparent;color:#e2e7e5;font-size:11px;outline:none}.search input::placeholder{color:#727d82}.library-label{padding:24px 8px 12px;font-size:10px;color:#8f9a9e;display:flex;justify-content:space-between;letter-spacing:1px}#model-list{overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:7px;padding:2px 0 12px;scrollbar-width:thin;scrollbar-color:#3d484d transparent}.model-card{display:flex;gap:12px;align-items:center;flex-shrink:0;text-align:left;position:relative;padding:9px;background:transparent;border:1px solid transparent;border-radius:8px;width:100%;min-height:76px}.model-card.active{border-color:#617966;background:#293930}.model-card.active:before{content:"";height:20px;width:2px;background:#b2efbb;position:absolute;left:-1px;border-radius:3px}.model-card img{width:57px;height:57px;object-fit:contain;background:#262d32;border-radius:5px}.model-card strong{display:block;font-size:12px;font-weight:500;margin-bottom:6px}.model-card small{font:10px ui-monospace,monospace;color:#879697}.model-card .number{color:#6d7e7c;font:9px ui-monospace,monospace;margin-left:auto}.library-foot{font-size:10px;color:#748286;padding:14px 8px;border-top:1px solid #30373a;margin:0;display:flex;justify-content:space-between}.stage{flex:1;position:relative;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#3b454b 0,#252d33 48%,#1d242a 100%)}#canvas-wrap{position:absolute;inset:0}canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.stage-heading{position:absolute;left:30px;top:28px;pointer-events:none}.eyebrow{color:#9ba9aa;font:9px ui-monospace,monospace;letter-spacing:2px}.eyebrow span{color:#b2efbb}.stage-heading h1{font-size:24px;font-weight:500;margin:10px 0 8px;letter-spacing:1px}.stage-heading p{font:10px ui-monospace,monospace;color:#818e94;margin:0}.stage-actions{position:absolute;right:22px;top:26px;display:flex;gap:8px}.stage-actions button{background:#20282ccc;border:1px solid #465156;border-radius:6px;padding:9px 10px;display:flex;align-items:center;gap:7px;font-size:12px}.stage-actions button[aria-pressed=true]{border-color:#7b9980;color:#c1e6c6}.loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;z-index:3;background:#222b32b3;backdrop-filter:blur(3px)}.loading[hidden]{display:none}.loading b{font-size:12px;font-weight:400;color:#c9d3d3}.spinner{width:24px;height:24px;border:2px solid #6c7c7880;border-top-color:#b2efbb;border-radius:50%;animation:spin 1s linear infinite}.progress{height:2px;width:120px;background:#4c565b}.progress i{display:block;background:#b2efbb;height:100%;width:0;transition:width .15s}.loading button{padding:8px 18px;border-radius:5px;background:#b2efbb;color:#18261c}@keyframes spin{to{transform:rotate(360deg)}}.model-stats{position:absolute;left:30px;bottom:145px;color:#8d9ba1;font:10px ui-monospace,monospace;display:flex;gap:18px;pointer-events:none}.model-stats b{font-weight:400;color:#d0dadb}.view-label{position:absolute;right:25px;bottom:145px;display:flex;align-items:center;gap:7px;font-size:10px;color:#a2afb0}.toolbar{position:absolute;bottom:68px;left:50%;transform:translateX(-50%);display:flex;gap:5px;padding:8px;border:1px solid #4e5a60;border-radius:11px;background:#1d252bea;box-shadow:0 8px 24px #10161a60;backdrop-filter:blur(12px);white-space:nowrap}.toolbar button{background:transparent;border:1px solid transparent;border-radius:6px;padding:10px 11px;display:flex;align-items:center;gap:7px;font-size:11px;color:#bfc8ca}.toolbar button[aria-pressed=true]{background:#34493a;border-color:#536d59;color:#c8edcd}.tool-icon{font-size:17px;line-height:16px;color:#a6b6b9}.normal-icon{background:conic-gradient(#90bcee,#e590c0,#93d7c5,#90bcee);border-radius:50%;color:transparent;width:15px;height:15px}.tool-divider{width:1px;background:#454e54;margin:6px 3px}.stage-footer{position:absolute;bottom:22px;left:30px;right:25px;display:flex;justify-content:space-between;font-size:10px;color:#7f9097;pointer-events:none}.stage-footer i{font-style:normal;margin:0 7px;color:#576971}.stage-footer span:last-child{font-family:ui-monospace,monospace;letter-spacing:2px}.reference-panel{position:absolute;width:280px;height:350px;right:24px;top:90px;border:1px solid #536063;border-radius:8px;background:#1c2328f5;box-shadow:0 12px 40px #0d11164d;display:flex;flex-direction:column;z-index:5;overflow:hidden;min-width:220px;min-height:220px}.reference-panel[hidden]{display:none}.reference-panel header{height:36px;flex-shrink:0;background:#293237;display:flex;align-items:center;gap:8px;padding:0 10px;cursor:move;touch-action:none;user-select:none;border-bottom:1px solid #465256;font-size:11px}.ref-indicator{width:3px;height:11px;background:#b2efbb;border-radius:1px}#reference-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#reference-count{color:#8c9a9f;font-size:9px;white-space:nowrap}.reference-panel header button{width:22px;height:24px;border-radius:4px;background:transparent;font-size:17px;cursor:pointer;color:#aab6b9}.reference-body{display:flex;flex:1;min-height:0}.reference-viewport{flex:1;min-width:0;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#151b1f}.reference-empty{text-align:center;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;min-width:150px}.reference-empty[hidden]{display:none}.reference-empty>span{font-size:36px;color:#788e8a;margin-bottom:16px}.reference-empty b{font-size:12px;font-weight:400;color:#c5d3ce}.reference-empty p{font-size:10px;color:#9aa9a8;margin:8px 0 28px}.reference-empty small{font:8px ui-monospace,monospace;color:#647779}.reference-body.dragover{outline:2px dashed #b2efbb;outline-offset:-5px;background:#304938}#reference-image{max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;user-select:none}#reference-image[hidden]{display:none}#reference-thumbs{width:44px;flex-shrink:0;background:#232c31;border-right:1px solid #3e4b50;overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column;gap:6px;padding:6px}#reference-thumbs[hidden]{display:none}#reference-thumbs button{width:32px;height:40px;flex-shrink:0;padding:1px;border:1px solid transparent;border-radius:3px;background:#1a2227}#reference-thumbs button.active{border-color:#b2efbb}#reference-thumbs img{width:100%;height:100%;object-fit:cover}.reference-panel footer{height:33px;flex-shrink:0;display:flex;align-items:center;gap:8px;padding:0 10px;background:#293237;border-top:1px solid #465256;font:9px ui-monospace,monospace;color:#9dadaf}.reference-panel footer button{background:transparent;color:#b6c6c6;padding:3px 4px;border-radius:3px;font-size:10px}#reference-zoom{width:40px;flex:1;min-width:0;accent-color:#b2efbb;height:2px;cursor:pointer}#reference-scale{width:30px;text-align:right}#reference-resize{position:absolute;right:0;bottom:0;width:13px;height:13px;cursor:nwse-resize;background:repeating-linear-gradient(135deg,transparent 0 2px,#7a8b90 3px 4px);clip-path:polygon(100% 0,100% 100%,0 100%);touch-action:none}#toast{position:absolute;top:20px;left:50%;transform:translateX(-50%);background:#26392d;border:1px solid #647b66;border-radius:6px;font-size:11px;padding:10px 18px;pointer-events:none;opacity:0;transition:opacity .2s;z-index:10}.empty-list{font-size:11px;text-align:center;padding:30px 0;color:#8d9b9c}.stage:fullscreen{width:100vw;height:100vh}@media(max-width:1100px){.library{width:215px}.reference-panel{width:240px;height:310px}.toolbar button{padding:9px 7px;gap:5px}.toolbar{gap:2px}.toolbar kbd{display:none}}@media(max-width:760px){.topbar{height:60px;padding:0 16px}.brand{font-size:15px}.brand-icon{font-size:30px}.top-caption{display:none}.workspace{height:calc(100% - 60px);flex-direction:column}.library{width:100%;height:114px;flex-shrink:0;padding:7px 10px 0;border-right:0;border-bottom:1px solid #384246}.library-heading,.search,.library-label,.library-foot{display:none}#model-list{flex-direction:row;gap:6px;overflow-x:auto;overflow-y:hidden;padding:0 0 6px}.model-card{width:108px;min-height:0;flex-direction:column;gap:3px;padding:4px;text-align:center}.model-card img{height:50px;width:70px}.model-card strong{font-size:10px;margin:0}.model-card small,.model-card .number{display:none}.stage-heading{left:16px;top:18px}.stage-heading h1{font-size:19px}.stage-actions{right:12px;top:15px}.stage-actions button{padding:7px}.stage-actions kbd,.stage-actions span{display:none}.reference-panel{top:85px;right:12px;width:220px;height:260px}.model-stats{left:16px;bottom:118px;gap:10px;font-size:9px}.view-label{right:14px;bottom:118px}.toolbar{bottom:47px;padding:5px;max-width:calc(100% - 16px);gap:0}.toolbar button{font-size:10px;flex-direction:column;padding:5px 8px;gap:4px}.tool-divider{margin:4px}.stage-footer{left:16px;right:14px;bottom:14px;font-size:9px}.stage-footer i{margin:0 3px}.eyebrow{font-size:8px}.stage-heading p{font-size:9px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition:none!important}}
/* Keep shortcuts visible at every viewport size. */
.toolbar button kbd,.stage-actions button kbd{display:inline-block;font-size:9px;padding:0 3px}.model-navigation{display:flex;align-items:center;gap:10px;pointer-events:auto}.model-navigation button{border:1px solid #46575e;background:#253037;border-radius:4px;color:#b1c1c4;width:25px;height:23px;font-size:12px}.model-navigation span{font:10px ui-monospace,monospace!important;letter-spacing:1px!important}#model-drop-hint{display:none;position:absolute;inset:12px;border:1px dashed #b2efbb;border-radius:9px;background:#1b2c25dd;z-index:9;pointer-events:none;align-items:center;justify-content:center;flex-direction:column;gap:14px}#model-drop-hint>span{font-size:40px;color:#b2efbb}#model-drop-hint b{font-size:17px;font-weight:400}#model-drop-hint small{font-size:11px;color:#9ab7a2}.file-dragging #model-drop-hint{display:flex}@media(max-width:760px){.toolbar button{position:relative;min-width:47px;gap:5px;padding:6px 8px 17px}.toolbar button kbd{position:absolute;bottom:3px;left:50%;transform:translateX(-50%);font-size:8px;line-height:10px}.stage-actions button{gap:4px}.stage-footer>span{max-width:62%;font-size:8px}.model-navigation{gap:5px}}
.model-card>div{min-width:0;flex:1}.model-card strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-heading{max-width:calc(100% - 350px)}.stage-heading h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-heading p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){.stage-heading{max-width:calc(100% - 180px)}.model-card>div{flex:none;width:100%}}
.share-actions{display:flex;gap:8px}.share-actions button{font-size:10px;color:#bad9c1;background:#26382c;border:1px solid #476551;border-radius:5px;padding:7px 9px}.share-actions button[hidden]{display:none}.stage-actions button[hidden]{display:none}.viewer-only #reference-upload,.viewer-only #reference-remove{display:none}.viewer-only .reference-empty{cursor:default}@media(max-width:760px){.topbar{gap:10px}.online{display:none}.share-actions{margin-left:auto;gap:5px}.share-actions button{font-size:9px;padding:6px}.brand-caption{font-size:7px}.brand{gap:6px}.viewer-only .online{display:flex}}
.loading-card{width:300px;max-width:calc(100% - 40px);padding:28px;border:1px solid #54665d;border-radius:13px;background:#1d2828f5;box-shadow:0 18px 60px #10151a66;display:flex;flex-direction:column;align-items:center;gap:15px}.loading-card .progress{height:6px;width:100%;border-radius:4px;overflow:hidden;background:#394b43}.loading-card .progress i{border-radius:4px}.loading-card #load-percent{font:32px ui-monospace,monospace;letter-spacing:-1px;color:#c3eccb}.loading-card #load-detail{font-size:10px;color:#91aaa0;text-align:center;line-height:1.5}.loading-card #load-label{text-align:center;line-height:1.5}.spinner[hidden]{display:none}
.reference-panel footer #reference-remove{flex-shrink:0;padding:4px 7px;margin-right:5px;color:#e4a8a5;border:1px solid #705351;border-radius:4px;line-height:13px;min-width:40px}.reference-panel footer #reference-remove:hover{background:#4c3033!important;color:#ffd1cc}.reference-panel footer #reference-remove:disabled{opacity:.35}.reference-panel footer{gap:6px}
