:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink, #0b0e14);background:var(--ground, #f4f6f9);font-synthesis:none;font-size:12px;--blue: var(--accent, #2348ff);--muted: var(--ink-3, #6f7a8c);--line: rgba(11, 14, 20, .12);--workspace-height:clamp(330px,52dvh,430px)}*{box-sizing:border-box}body{margin:0;height:100dvh;display:grid;grid-template-rows:48px minmax(0,1fr);overflow:hidden}button,input,select{font:inherit}button,.button{border:1px solid var(--line);background:#fff;color:#26364d;padding:6px 9px;border-radius:6px;cursor:pointer;text-decoration:none;font-weight:550;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}button:hover,.button:hover{background:var(--accent-soft, #edf3fc);border-color:var(--accent, #bacdeb)}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #7da8fa;outline-offset:2px}.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.primary:hover{background:#1a3ae0;color:#fff}a{color:var(--blue)}.header{display:flex;align-items:center;gap:8px;padding:7px 12px;min-width:0}.brand{display:flex;gap:6px;align-items:center;flex:none;text-decoration:none;color:inherit}h1{font-size:16px;letter-spacing:-.5px;margin:0}#status{color:#53657d;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#project-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.account{flex:none;font-size:11px;font-weight:550;text-decoration:none;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:6px 9px;white-space:nowrap}.account:hover{color:var(--blue);border-color:var(--blue)}body[data-signed-in=true] .account{color:var(--blue)}#empty-demos{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}#generate{flex:none;height:32px}main{min-height:0;min-width:0;padding:0 10px 10px;display:grid;grid-template-rows:var(--workspace-height) minmax(0,1fr);gap:10px}.panel{min-width:0;background:#fff;border:1px solid var(--line);border-radius:9px}.workspace{min-height:0;display:grid;grid-template-columns:minmax(330px,.85fr) minmax(600px,1.4fr);gap:10px}.viewer-panel{min-height:0;display:grid;grid-template-rows:37px minmax(0,1fr) 27px 32px;position:relative}.orientation{display:flex;align-items:center;justify-content:center;gap:6px;padding:4px 8px;border-bottom:1px solid var(--line)}.orientation button{font-size:11px;padding:4px 7px}.rotations{display:flex;gap:6px}.rotations label{display:flex;align-items:center;gap:4px;margin:0;font-size:10px}.rotations input[type=number]{width:53px;margin:0;height:25px;padding:3px 4px}.preview-area{min-height:0;position:relative;display:grid;place-items:center}.canvas-wrap{width:min(100%,calc((var(--workspace-height) - 98px)*4/3));aspect-ratio:4/3;max-width:480px;max-height:100%;background:#fff}canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}canvas.picking{cursor:crosshair}.view-toolbar{display:flex;align-items:center;justify-content:center;gap:3px;min-width:0;overflow-x:auto;scrollbar-width:thin}.view-toolbar button{flex:none;font-size:10px;border-color:transparent;padding:4px 9px;background:#f3f6fa}.model-row{border-top:1px solid var(--line);display:flex;align-items:center;gap:6px;padding:0 8px;min-width:0}#model-menu{flex:1;min-width:0}#model-menu summary{display:flex;align-items:center;gap:8px;cursor:pointer;min-width:0;height:30px;font-size:11px}#model-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550}.chevron{margin-left:auto;color:var(--muted)}#geometry-info{white-space:nowrap;color:var(--muted);font-size:9px}.model-popup{position:absolute;z-index:8;top:calc(100% + 3px);left:0;width:min(380px,calc(100vw - 24px));max-height:58dvh;overflow-y:auto;padding:14px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 32px #1f345c26;border-radius:8px}.file-input,.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.upload{border:1px dashed #aac0df;padding:12px;border-radius:6px;cursor:pointer}.upload small{display:block;margin-top:5px;color:var(--muted)}#empty-model,#loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#fffffff5;z-index:2}.drop-upload{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;border:1px dashed #b3c7e2;background:#f8faff;padding:24px 35px;border-radius:10px}.drop-upload strong{font-size:17px}.drop-upload span,.drop-upload small{color:var(--muted)}.dragging{outline:2px solid var(--blue);outline-offset:-4px}body:not([data-loaded]) .orientation,body:not([data-loaded]) .view-toolbar{visibility:hidden}#loading{z-index:3;color:#526b8e;padding:14px;gap:8px;overflow-y:auto;text-align:center}#loading>*{flex-shrink:0;max-width:100%}#import-file{font-size:11px;overflow-wrap:anywhere}#import-elapsed{font-size:11px;color:var(--muted)}#loading .hint{margin:0;max-width:32em}.import-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.import-actions .button{margin:0}.controls{min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow-y:auto;scrollbar-width:thin}.controls section{min-width:0;padding:12px;border-right:1px solid var(--line)}.controls section:last-child{border:0}h2{font-size:12px;font-weight:650;margin:0 0 12px;display:flex;align-items:center;gap:8px}label{font-size:11px;color:#63728a;display:block;margin-bottom:4px}select,input[type=number],input[type=search],input[type=text]{width:100%;min-width:0;color:#293c56;padding:5px 6px;border:1px solid #dfe5ed;border-radius:5px;background:#fff;margin-bottom:9px;font-size:11px;height:28px}input[type=range]{width:100%;height:15px;margin:0 0 8px;accent-color:var(--blue);cursor:pointer}input[type=checkbox]{accent-color:var(--blue);margin:0 4px 0 0;vertical-align:middle}.range-label{display:flex;justify-content:space-between;gap:8px}.range-label output{font-variant-numeric:tabular-nums;color:#29486f}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.two-col label{margin-bottom:0}.two-col select{margin-top:4px}.hint{font-size:10px;line-height:1.5;color:var(--muted);margin:8px 0}.full{width:100%;margin-bottom:9px;font-size:11px}.claim-check{line-height:1.6;margin:4px 0}#single-options input[type=number]{width:55px;margin:0;height:24px}.save-style{display:flex;gap:4px}.save-style select{flex:1;min-width:0}.save-style button{align-self:start;font-size:10px;padding:6px}.result-panel{min-height:0;display:grid;grid-template-rows:34px minmax(0,1fr);overflow:hidden}.result-bar{border-bottom:1px solid var(--line);padding:3px 9px;display:flex;align-items:center;gap:10px;min-width:0;font-size:10px;color:var(--muted)}.result-bar>strong{flex:none;color:#526681;font-size:11px}#result-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-footer{margin-left:auto;display:flex;align-items:center;gap:10px;white-space:nowrap}.result-footer strong{color:#334966;font-weight:550}.result-bar .button,.result-bar button{padding:4px 7px;font-size:10px}.drawings-area{min-height:0;min-width:0;display:flex}.generated-area{min-height:0;min-width:0;flex:1}#result-empty{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#8796ac;text-align:center;padding:8px}#result-empty strong{font-size:14px;color:#61748f;font-weight:500}#result-image{display:block;width:100%;height:100%;min-height:0;object-fit:contain}#result-gallery{display:grid;height:100%;min-height:0;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:6px;padding:6px}#result-gallery figure{margin:0;min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 19px;background:#fff;border:1px solid #edf0f5;border-radius:5px;overflow:hidden}#result-gallery button{display:block;width:100%;height:100%;min-height:0;border:0;border-radius:0;padding:0;color:var(--muted);font-size:10px}#result-gallery img{display:block;width:100%;height:100%;object-fit:contain}#result-gallery figcaption{padding:3px 7px;color:#5a6e88;font-size:10px}dialog{border:1px solid var(--line);border-radius:12px;padding:20px;color:inherit;width:min(500px,calc(100vw - 24px));max-height:90dvh;box-shadow:0 12px 64px #23365633}dialog::backdrop{background:#20304d66;backdrop-filter:blur(2px)}.dialog-heading,.figure-heading{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:16px}.dialog-heading h2,.figure-heading h2{margin:0;flex:1;font-size:15px}#advanced-dialog{width:min(780px,calc(100vw - 24px))}.advanced-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.toggle{margin:0;display:inline-flex;align-items:center}.timing-grid>div{display:flex;justify-content:space-between;gap:8px;line-height:2;color:var(--muted);font-size:10px}.timing-grid strong{color:#435b7c}#figure-dialog{width:min(1100px,95vw);height:90dvh;padding:14px}#figure-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}#figure-image{width:100%;height:100%;object-fit:contain;min-height:0}#figure-dialog .figure-heading{margin-bottom:10px}#error,#save-status{position:fixed;bottom:14px;left:50%;transform:translate(-50%);max-width:90vw;padding:10px 15px;border:1px solid #d1dae6;box-shadow:0 3px 12px #29476919;border-radius:6px;background:#fff;color:#b03b32;z-index:20}#save-status{color:#356852}#save-error{color:#b03b32;font-size:11px}#mobile-settings,#close-mobile-settings{display:none}[hidden]{display:none!important}@media(min-width:1650px){#result-gallery{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}}@media(max-height:760px)and (min-width:901px){:root{--workspace-height:330px}.controls section{padding:9px}.controls h2{margin-bottom:8px}.controls .hint{font-size:9px;margin:5px 0}.controls input[type=range]{margin-bottom:5px}.controls select,.controls .full{margin-bottom:6px}.drop-upload{padding:16px 25px}}@media(max-width:1100px)and (min-width:901px){.workspace{grid-template-columns:minmax(300px,.8fr) minmax(570px,1.5fr)}.controls section{padding:8px}.rotations input[type=number]{width:42px}.orientation{gap:4px}.view-toolbar button{padding:4px 7px}}@media(max-width:900px){:root{--workspace-height:clamp(270px,43dvh,360px)}body{grid-template-rows:45px minmax(0,1fr)}main{padding:0 7px 7px;gap:7px}.header{gap:5px;padding:6px 7px}.brand{gap:3px}.brand img{width:18px;height:18px}h1{font-size:13px}#status,#project-title{display:none}.header button{font-size:10px;padding:5px 6px}#generate{margin-left:auto;min-width:0;font-size:10px}#open-project{font-size:0}#open-project:after{content:"Open";font-size:10px}#save-project{font-size:0}#save-project:after{content:"Save";font-size:10px}#mobile-settings{display:inline-flex}.workspace{display:block}.viewer-panel{height:100%}.controls{display:none}.controls.mobile-open{display:grid;position:fixed;inset:50px 8px 8px;z-index:15;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;box-shadow:0 0 0 60px #20304d66}.controls.mobile-open section{border-bottom:1px solid var(--line)}#close-mobile-settings{display:inline-flex}.canvas-wrap{max-width:400px}.rotations input[type=number]{width:55px}.view-toolbar button{padding:3px 10px}.result-bar{gap:6px;padding:4px 7px}#image-info{display:none}.result-footer{gap:5px}#result-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:4px;padding:4px}#result-gallery figcaption{font-size:9px;padding:3px 5px}.result-bar>strong{display:none}.advanced-grid{grid-template-columns:1fr}.model-popup{max-height:50dvh}.drop-upload{padding:14px 30px}.drop-upload strong{font-size:15px}.drop-upload small{font-size:10px}}@media(max-width:430px){.brand img{display:none}.header{overflow-x:auto;scrollbar-width:none}.account{display:none}#status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.header{gap:5px;padding:7px 8px}}.draft-actions{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0}.draft-actions button{font-size:10px;padding:5px 7px}.controls .hint{margin:5px 0}.controls .draft-actions{gap:4px}.controls .draft-actions button{flex:1;padding:5px}.controls #set-hint{font-size:9px}.controls #part-status{max-height:34px;overflow:auto}.pose-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.pose-inputs input{width:100%}textarea{width:100%;border:1px solid var(--line);border-radius:5px;padding:7px;font:inherit;resize:vertical}#figure-select{height:190px;width:100%;font-size:12px}#figure-select option{padding:5px}#regions-dialog select[size]{height:100px}#region-indicator{position:fixed;pointer-events:none;border:1px solid var(--blue);background:#2265de20;z-index:25}#region-active{position:absolute;bottom:5px;left:5px;right:5px;display:flex;align-items:center;justify-content:space-between;gap:6px;background:#fffffff0;border:1px solid var(--line);padding:4px 7px;border-radius:5px;font-size:10px;z-index:3}#region-active span{min-width:0}#region-size-value{font-size:11px}#result-gallery.many-figures{grid-template-rows:none;grid-auto-rows:130px;overflow-y:auto}.figure-stage{min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}#figure-dialog[open]{grid-template-rows:auto auto minmax(0,1fr)}#figure-dialog:not(:has(#annotation-toolbar:not([hidden]))){grid-template-rows:auto minmax(0,1fr)}#annotation-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:7px;margin-bottom:5px}#annotation-toolbar label{font-size:10px;margin:0}#annotation-toolbar select,#annotation-toolbar input{margin-bottom:0}#annotation-label{width:90px}#annotation-target{max-width:180px}#annotation-toolbar .hint{flex-basis:100%;margin:0;font-size:10px}#annotation-canvas{display:block;max-width:100%;max-height:100%;width:auto;height:auto;aspect-ratio:4/3;touch-action:none;cursor:crosshair}#sheets-dialog{width:min(970px,96vw)}.sheet-layout{display:grid;grid-template-columns:minmax(240px,1fr) minmax(200px,1.1fr);gap:20px}.sheet-preview{min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px}#sheet-preview{width:auto;max-width:100%;max-height:65dvh;height:auto;border:1px solid var(--line);object-fit:contain}#sheet-checks{padding:8px;background:#f3f6fc;border-radius:5px}@media(max-height:760px)and (min-width:901px){.controls section{padding:7px}.controls .draft-actions button{font-size:9px;padding:3px}.controls .hint{font-size:9px;margin:3px 0}.controls .range-label{margin-top:3px}.controls select{margin-bottom:4px}}@media(max-width:900px){#result-gallery.many-figures{grid-auto-rows:125px}.controls.mobile-open{overflow-y:auto}.sheet-layout{grid-template-columns:1fr}#sheet-preview{max-height:55dvh}#annotation-toolbar{gap:5px}#annotation-toolbar button{font-size:10px;padding:5px}#annotation-toolbar select{max-width:150px;font-size:10px}#annotation-toolbar .hint{font-size:9px}}
