:root{color-scheme:dark;--bg: #10131c;--surface: #171b27;--raised: #202535;--line: #2c3245;--muted: #929ab1;--fg: #e6e9f2;--accent: #b7a7ff;--accent-bg: #39314f;--red: #f48199;--green: #9ce2c5;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;background:var(--bg);color:var(--fg);font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,select,textarea{font:inherit}button,.file-button{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--raised);border:1px solid var(--line);border-radius:8px;padding:8px 11px;color:var(--fg);cursor:pointer;white-space:nowrap;touch-action:manipulation}button:hover{background:#2c3248}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{opacity:.4;cursor:default}.primary{background:var(--accent);color:#1f1935;border-color:var(--accent);font-weight:650}.primary:hover{background:#c8bbff}.active{background:var(--accent-bg)!important;color:#d7cbff!important;border-color:#73638f!important}.danger{color:var(--red)}input,select,textarea{background:var(--bg);border:1px solid var(--line);border-radius:7px;min-height:44px;color:var(--fg);padding:8px 10px;max-width:100%}input[type=checkbox]{min-height:20px;width:20px;height:20px;accent-color:var(--accent)}input[type=range]{padding:0;accent-color:var(--accent);min-height:32px;width:100px;border:none}input[type=color]{padding:5px;width:70px}textarea{width:100%;min-height:120px;resize:vertical}a{color:var(--accent)}h1,h2,h3,p{margin-top:0}h2{font-size:22px;letter-spacing:-.6px;font-weight:600}h3{font-size:11px;font-weight:650;letter-spacing:1.1px;color:var(--muted);text-transform:uppercase;margin:0 0 15px}p{line-height:1.7}.muted{color:var(--muted)}.eyebrow{color:var(--accent);font-size:10px;font-weight:650;letter-spacing:2px}.spacer{flex:1}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.full{display:flex;width:100%;margin-top:9px}.inline,.check{display:inline-flex;align-items:center;gap:6px;min-height:44px;white-space:nowrap}.check{display:flex}.field{display:flex;align-items:center;justify-content:space-between;gap:9px;margin:7px 0;min-height:44px}.field span{color:var(--muted);flex:1}.field input,.field select{width:115px;min-width:0}select{width:100%}.field input[type=number]{font-variant-numeric:tabular-nums}.empty{color:var(--muted);font-size:12px;padding:20px 10px;line-height:1.9;text-align:center}.app{height:100dvh;display:flex;flex-direction:column;min-width:360px;overflow:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.app-header{height:65px;min-height:65px;padding:0 20px;display:flex;align-items:center;gap:14px;background:#151924;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--fg);font-size:16px;font-weight:750;letter-spacing:2px;white-space:nowrap}.brand small{display:block;font-size:8px;letter-spacing:3.3px;color:var(--muted);margin-top:2px}.brand-mark{font-size:24px;line-height:1;background:var(--accent);color:#211a34;width:35px;height:35px;display:grid;place-content:center;border-radius:9px;font-style:italic}.header-divider{height:24px;width:1px;background:var(--line);margin:0 7px}.project-title{border:0;background:transparent;width:180px;font-weight:500}.save-state{color:var(--muted);display:flex;gap:5px;align-items:center;white-space:nowrap;font-size:10px}.save-state svg{color:var(--green)}.offline{font-size:10px;color:var(--green);display:flex;gap:5px;align-items:center}.icon{background:transparent;border-color:transparent;padding:8px}.workspace-bar{height:58px;min-height:58px;display:flex;align-items:center;padding:0 16px;gap:10px;border-bottom:1px solid var(--line);background:var(--bg)}.workspace-bar nav{height:100%;display:flex;gap:2px;align-items:stretch}.workspace-bar nav button{border:0;border-radius:0;background:none;padding:0 20px;position:relative;font-size:13px;color:var(--muted)}.workspace-bar nav button.active{background:transparent!important;color:var(--accent)!important}.workspace-bar nav button.active:after{content:"";position:absolute;bottom:0;height:2px;background:var(--accent);left:18px;right:18px}.workspace-caption{font-size:9px;letter-spacing:1.7px;color:var(--muted);margin-left:20px}.editor{position:relative;display:grid;grid-template-columns:235px minmax(0,1fr) 255px;flex:1;min-height:180px;overflow:hidden}.editor.left-closed{grid-template-columns:minmax(0,1fr) 255px}.editor.right-closed{grid-template-columns:235px minmax(0,1fr)}.editor.left-closed.right-closed{grid-template-columns:1fr}.sidebar,.inspector{background:var(--surface);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.sidebar{border-right:1px solid var(--line)}.inspector{border-left:1px solid var(--line)}.panel-section{padding:18px 15px;border-bottom:1px solid var(--line)}.panel-section>.row{margin-top:10px}.panel-section>select,.panel-section>input{width:100%}.bone-list{max-height:250px;overflow:auto;margin:12px -8px -10px;scrollbar-width:thin}.bone{width:100%;border:0;background:transparent;border-radius:6px;justify-content:flex-start;gap:10px;font-size:12px}.bone-node{width:7px;height:7px;border:1.5px solid #7c88a7;border-radius:50%;flex-shrink:0}.bone span:nth-child(2){flex:1;text-align:left}.bone.selected{background:var(--accent-bg);color:#dcd3ff}.bone.selected .bone-node{background:var(--accent);border-color:var(--accent)}.bone-tools{display:flex;gap:5px;margin-top:8px}.bone-tools button{flex:1;min-height:38px;font-size:10px}.model-row{display:flex;width:100%;gap:8px;justify-content:flex-start;margin-top:8px}.model-row span{overflow:hidden;text-overflow:ellipsis;flex:1}.viewport-area{display:flex;flex-direction:column;min-width:0;position:relative;background:#121621}.viewport-top{height:44px;min-height:44px;display:flex;gap:10px;align-items:center;padding:0 16px;border-bottom:1px solid #22283b}.viewport-label{font-size:10px;letter-spacing:1px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.viewport-label .muted{letter-spacing:0}.gpu-badge{font-size:8px;font-weight:600;letter-spacing:1.3px;color:var(--green);border:1px solid #375449;border-radius:4px;padding:4px 6px;white-space:nowrap}.canvas-wrap{position:relative;flex:1;min-height:0;overflow:hidden}.canvas-wrap canvas,.viewport-input{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.viewport-input{z-index:2}.viewport-empty{position:absolute;z-index:3;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:radial-gradient(ellipse at 50% 45%,#27233780,transparent 70%);padding:10px}.viewport-empty h1{font-weight:500;font-size:27px;letter-spacing:-1px;margin:12px 0}.viewport-empty p{color:var(--muted);font-size:12px;margin-bottom:20px}.empty-orbit{border:1px solid #5f527d70;border-radius:50%;padding:22px;margin-bottom:22px;color:var(--accent);box-shadow:0 0 0 12px #75689408,0 0 0 26px #75689405}.touch-toolbar{min-height:56px;display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--surface);border-top:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.touch-toolbar>button{padding:8px}.touch-toolbar select{width:auto;min-width:95px;font-size:10px}.tool-group{display:flex;gap:2px;border-right:1px solid var(--line);padding-right:8px}.tool-group button{border:0;background:none;padding:8px}.tool-group span{display:none}.orientation{position:absolute;bottom:35px;right:20px;z-index:1;width:45px;height:45px;pointer-events:none;font-size:11px}.orientation span{position:absolute;font-weight:600}.orientation .x{color:#ff8b96;bottom:0;right:0}.orientation .y{color:#b0e3b1;left:16px;top:0}.orientation .z{color:#91b6fa;bottom:4px;left:0}.viewport-stats{position:absolute;bottom:12px;left:15px;display:flex;align-items:center;gap:7px;font-size:9px;color:#98a1b6;pointer-events:none}.viewport-stats span{opacity:.7}.gizmo-legend{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #a795d9;border-radius:50%;width:100px;height:100px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:9px;color:#ddd3fb;pointer-events:none}.inspector-tabs{display:flex;position:sticky;top:0;z-index:1;background:var(--surface);border-bottom:1px solid var(--line)}.inspector-tabs button{flex:1;border-radius:0;border:0;background:none}.bone-title{font-size:17px;font-weight:500}.curve-preview{height:110px;background-color:var(--bg);background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:25% 25%;border:1px solid var(--line);margin:10px 0}.curve-preview svg{height:100%;width:100%}.curve-preview path{fill:none;stroke:var(--accent);stroke-width:2}.transport{min-height:65px;display:flex;align-items:center;gap:10px;padding:8px 16px;border-top:1px solid var(--line);background:#171b27;overflow-x:auto}.history-buttons{display:flex;gap:3px;margin-right:10px}.history-buttons button{background:none;border:0}.transport-time{display:flex;flex-direction:column;min-width:100px;margin:0 15px 0 0;font-variant-numeric:tabular-nums}.transport-time strong{font-size:21px;font-weight:500;letter-spacing:1px}.transport-time strong span{color:var(--muted);font-size:15px}.transport-time small{font-size:8px;color:var(--muted);letter-spacing:1px;margin-top:2px}.play-button{background:#30354a;border-color:#474d67;min-width:48px}.record{color:var(--red);border-color:#774554;background:#30212e}.record-dot{width:10px;height:10px;border-radius:50%;background:var(--red)}.record.active{background:#572c3a!important;color:#ffc3ce!important;border-color:var(--red)!important;animation:pulse 1.5s infinite}.transport>select{width:90px}.transport .inline{font-size:11px}.state-badge{font-size:9px;color:var(--muted);letter-spacing:1.5px;white-space:nowrap}.state-badge.recording{color:var(--red)}.clip-actions{height:48px;min-height:48px;display:flex;align-items:center;padding:0 14px;gap:2px;background:#131722;overflow-x:auto;border-top:1px solid var(--line)}.clip-actions button{background:none;border:0;font-size:10px;min-height:40px;gap:5px;padding:6px 9px}.clip-actions>.muted{font-size:10px;white-space:nowrap;margin:0 10px}.timeline{height:250px;min-height:170px;display:flex;flex-direction:column;background:var(--bg)}.timeline-tools{height:44px;min-height:44px;display:flex;align-items:center;gap:8px;padding:0 15px;border-block:1px solid var(--line)}.timeline-tools strong{font-size:9px;letter-spacing:1.4px}.timeline-tools>.muted{font-size:9px}.timeline-tools button{min-height:35px;border-color:transparent;background:none;padding:5px}.timeline-tools .inline{font-size:10px}.timeline-tools input[type=range]{width:80px}.timeline-scroll{overflow:auto;flex:1;scrollbar-width:thin;touch-action:pan-x pan-y;overscroll-behavior:contain}.ruler-row{height:28px;display:flex;position:sticky;top:0;z-index:6;background:#171b27}.ruler-row .track-heading{font-size:8px;letter-spacing:1.2px;color:var(--muted);padding:8px 12px;background:#171b27}.ruler{position:relative;border-bottom:1px solid var(--line);height:28px}.ruler span{position:absolute;bottom:7px;color:var(--muted);font-size:9px;font-variant-numeric:tabular-nums;padding-left:6px;border-left:1px solid var(--line)}.track-row{display:flex;height:74px;border-bottom:1px solid var(--line);position:relative}.track-heading{position:sticky;left:0;z-index:4;width:180px;min-width:180px;background:#191d2a;border-right:1px solid var(--line);padding:9px 12px}.active-track>.track-heading{background:#252237}.track-name{font-size:10px;display:flex;align-items:center;gap:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.track-name i{width:5px;height:12px;border-radius:2px;flex-shrink:0}.track-switches{display:flex;gap:3px;margin-top:2px}.track-switches button{font-size:10px;min-height:35px;height:35px;min-width:35px;padding:4px;border:0;background:none}.track-lane{position:relative;background-image:linear-gradient(90deg,#ffffff08 1px,transparent 1px)}.hidden-track .track-lane{opacity:.4}.motion-block{position:absolute;top:7px;height:60px;min-width:14px;border:1px solid color-mix(in srgb,var(--clip-color) 60%,transparent);border-radius:6px;background:color-mix(in srgb,var(--clip-color) 20%,#1b2030);color:var(--clip-color);overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}.motion-block.selected{outline:2px solid var(--clip-color);outline-offset:1px;background:color-mix(in srgb,var(--clip-color) 33%,#1b2030)}.motion-block.locked{filter:saturate(.3)}.clip-caption{display:flex;flex-direction:column;gap:3px;padding:7px 15px 0;pointer-events:none;overflow:hidden;white-space:nowrap;position:relative;z-index:1}.clip-caption strong{font-size:10px;font-weight:550}.clip-caption span{font-size:8px;opacity:.7}.motion-block svg{position:absolute;bottom:2px;left:0;width:100%;height:20px;opacity:.4;pointer-events:none}.motion-block svg path{fill:none;stroke:var(--clip-color);stroke-width:1}.trim-handle{position:absolute;top:0;height:100%;width:14px;z-index:3;touch-action:none}.trim-handle:after{content:"";position:absolute;top:21px;left:5px;width:3px;height:17px;background:var(--clip-color);opacity:.6;border-radius:2px}.trim-handle.start{left:0}.trim-handle.end{right:0}.playhead{position:absolute;top:0;bottom:0;width:1px;background:#e5dcff;z-index:3;pointer-events:none}.playhead:before{content:"";width:7px;height:7px;background:#e5dcff;position:absolute;top:0;left:-3px;transform:rotate(45deg)}footer{height:28px;min-height:28px;display:flex;align-items:center;gap:11px;padding:0 16px;background:#171b27;border-top:1px solid var(--line);color:var(--muted);font-size:8px;letter-spacing:.4px}footer button{font-size:9px;min-height:22px;border:none;background:none;padding:2px;color:var(--muted)}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--green)}.toast{position:fixed;z-index:30;bottom:38px;left:50%;transform:translate(-50%);background:#2a3044;border:1px solid #56607c;box-shadow:0 10px 40px #0005;padding:10px 12px 10px 18px;border-radius:12px;display:flex;align-items:center;gap:14px;max-width:calc(100% - 30px);line-height:1.5}.toast>span{white-space:normal}.toast button{background:transparent;border:0;font-size:22px}.modal-scrim{position:fixed;inset:0;background:#070a12c9;z-index:40;display:flex;align-items:center;justify-content:center;padding:22px}.modal{background:#1b2030;border:1px solid #454c64;border-radius:18px;padding:30px;width:460px;max-width:100%;max-height:90dvh;overflow:auto;box-shadow:0 30px 100px #0008}.modal .eyebrow{display:block;margin-bottom:18px}.modal h2{font-size:21px;overflow-wrap:anywhere}.modal p{color:#b8bfd1;font-size:12px}.modal progress{width:100%;height:9px;accent-color:var(--accent)}.modal.help{width:650px}.update-banner{position:fixed;top:70px;left:50%;transform:translate(-50%);padding:10px 20px;background:#2d2943;border:1px solid var(--accent);border-radius:12px;z-index:35;display:flex;align-items:center;gap:12px}.library-overlay{position:absolute;inset:0 0 0 235px;background:var(--bg);z-index:10;overflow:auto}.left-closed .library-overlay{left:0}.library-view{padding:30px}.library-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:24px}.library-title>div{flex:1;min-width:250px}.library-title h2{margin:10px 0 8px}.library-title p{font-size:11px;margin:0}.segmented{display:flex;gap:7px;margin-bottom:25px;flex-wrap:wrap}.segmented button{border:0;background:var(--surface)}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:16px}.asset-card{border:1px solid var(--line);border-radius:13px;background:var(--surface);padding:15px;overflow:hidden}.asset-preview{height:90px;background:radial-gradient(ellipse at 50% 80%,#49426060,#24283b);border:1px solid #49426080;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:18px;color:var(--accent);margin-bottom:16px}.asset-preview span{font-size:8px;letter-spacing:2px}.asset-card h3{font-size:13px;color:var(--fg);letter-spacing:0;text-transform:none;overflow-wrap:anywhere;margin:0 0 7px}.asset-card p{font-size:10px;color:var(--muted);margin-bottom:13px}.asset-card .row button{font-size:10px;padding:7px}.asset-card.compact>svg{color:var(--accent);margin:8px 0 18px}.asset-card.compact>button{display:flex;width:100%;margin-top:15px}.hash{color:var(--muted);font-family:monospace;font-size:9px}.version-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px}.mipo-panel video{width:100%;max-height:200px;background:#080b12;border:1px solid var(--line);border-radius:8px;object-fit:contain}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}@keyframes pulse{50%{box-shadow:0 0 0 4px #f4819910}}@media(min-height:1000px){.timeline{height:300px}.bone-list{max-height:360px}}@media(max-width:1100px){.editor{grid-template-columns:200px minmax(0,1fr) 230px}.editor.left-closed{grid-template-columns:minmax(0,1fr) 230px}.editor.right-closed{grid-template-columns:200px minmax(0,1fr)}.library-overlay{left:200px}.workspace-caption{display:none}.app-header{padding:0 12px;gap:8px}.save-state{display:none}.transport{gap:7px;padding:7px 10px}.transport-time{margin-right:0}.touch-toolbar{gap:3px}.touch-toolbar .inline{font-size:10px}.timeline{height:215px}.panel-section{padding:15px 12px}.timeline-tools .muted{display:none}}@media(max-width:850px){.editor,.editor.left-closed,.editor.right-closed,.editor.left-closed.right-closed{grid-template-columns:minmax(0,1fr)}.editor>.sidebar{position:absolute;left:0;top:0;bottom:0;width:225px;z-index:12;box-shadow:10px 0 30px #0006}.editor>.inspector{position:absolute;right:0;top:0;bottom:0;width:235px;z-index:11;box-shadow:-10px 0 30px #0006}.library-overlay,.left-closed .library-overlay{left:0}.editor.library-open>.sidebar{display:none}.workspace-bar{padding:0 5px;gap:1px}.workspace-bar nav button{padding:0 12px;font-size:12px}.workspace-bar nav button svg{width:16px}.app-header .project-title{width:140px;font-size:11px}.brand{font-size:13px;gap:7px}.brand-mark{height:30px;width:30px;font-size:22px}.header-divider{margin:0}.transport .inline{font-size:10px}.transport .state-badge{display:none}.transport{min-height:60px}.transport-time strong{font-size:17px}.transport-time{min-width:77px}.history-buttons{margin-right:0;gap:0}.history-buttons button{padding:7px;min-width:35px}.timeline{height:235px}.library-view{padding:20px}.viewport-empty h1{font-size:23px}.touch-toolbar{position:relative;z-index:13;max-width:100%}footer>span:nth-child(3){display:none}}@media(max-width:520px){.app-header{min-height:58px;height:58px;gap:5px}.brand small{font-size:6px}.brand{font-size:10px;letter-spacing:1px}.brand-mark{width:26px;height:28px;font-size:18px}.project-title{width:105px!important}.export-button{min-width:44px;font-size:10px;padding:6px}.app-header>.icon{display:none}.workspace-bar nav button{font-size:10px;padding:0 10px;gap:4px}.workspace-bar nav button svg{width:14px}.workspace-bar .icon{min-width:32px;padding:6px}.workspace-bar{min-height:50px;height:50px}.history-buttons{display:none}.transport>select{width:75px}.transport .inline{font-size:9px}.transport .inline:last-of-type{display:none}.transport-time{min-width:69px}.transport{gap:4px}.transport>.spacer{display:none}.timeline-tools{padding:0 7px;gap:3px}.timeline-tools strong{font-size:8px}.timeline-tools input[type=range]{width:54px}.timeline-tools>.inline{font-size:9px}.timeline{height:220px;min-height:140px}.track-heading{width:150px;min-width:150px}.modal{padding:22px}.asset-grid{grid-template-columns:1fr}.viewport-empty .empty-orbit{display:none}.viewport-empty h1{font-size:21px}.viewport-empty p{font-size:10px}.viewport-top{padding:0 9px}.viewport-label .muted{display:none}.toast{font-size:11px;bottom:35px}.clip-actions>.muted{display:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}@media(min-width:851px)and (max-height:950px){.app-header{height:56px;min-height:56px}.workspace-bar{height:50px;min-height:50px}.transport{min-height:56px}.clip-actions{height:44px;min-height:44px}.timeline{height:210px}footer{height:24px;min-height:24px}}.gizmo-legend{pointer-events:auto;touch-action:none;z-index:4;background:#b7a7ff08}.gizmo-legend:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 6px #b7a7ff20;top:calc(50% - 4px);left:calc(50% - 4px)}.viewport-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.viewport-top .viewport-label{min-width:0}.timeline-dock{display:flex;flex-direction:column;min-height:0;flex:0 1 auto}.timeline-dock[hidden]{display:none}.viewport-expanded>.app-header,.viewport-expanded>.workspace-bar,.viewport-expanded>footer{display:none}.viewport-expanded .editor,.viewport-expanded .editor.left-closed,.viewport-expanded .editor.right-closed,.viewport-expanded .editor.left-closed.right-closed{display:block;flex:1;min-height:0}.viewport-expanded .viewport-area{height:100%}.viewport-expanded .viewport-top{height:auto;min-height:56px;padding:6px 12px;z-index:15}.viewport-expanded .editor>.sidebar,.viewport-expanded .editor>.inspector{position:absolute;top:64px;bottom:76px;width:min(320px,calc(100% - 24px));border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px #0008;z-index:12}.viewport-expanded .editor>.sidebar{left:12px}.viewport-expanded .editor>.inspector{right:12px}.viewport-expanded .timeline-dock{position:absolute;left:12px;right:12px;bottom:calc(68px + env(safe-area-inset-bottom));max-height:45dvh;z-index:14;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 -12px 40px #0008;background:var(--bg)}.viewport-expanded .timeline{height:min(260px,35dvh);min-height:140px}.viewport-expanded .clip-actions{flex-shrink:0;overflow-x:auto}.viewport-expanded .library-overlay,.viewport-expanded .left-closed .library-overlay{inset:64px 12px 76px auto;width:min(800px,calc(100% - 24px));border:1px solid var(--line);border-radius:12px}.motion-dialog{color:var(--fg);margin:auto}.motion-dialog::backdrop{background:#070a12c9}.motion-dialog h2{margin-bottom:0}.motion-dialog>.row{margin-bottom:16px}.motion-dialog label{display:grid;gap:8px;margin:16px 0}.motion-dialog label.inline{display:flex}.motion-dialog select{width:100%}.motion-dialog .motion-summary{margin:14px 0 0;overflow-wrap:anywhere}@media(max-width:900px){.viewport-expanded .viewport-label,.viewport-expanded .gpu-badge{display:none}.viewport-expanded .viewport-top>.spacer{display:none}.viewport-expanded .viewport-controls{width:100%;justify-content:space-between;gap:4px}.viewport-controls button{padding:8px}}@media(max-width:650px){.viewport-expanded .viewport-controls{flex-wrap:wrap;justify-content:flex-start}.viewport-expanded .editor>.sidebar,.viewport-expanded .editor>.inspector{top:112px}.viewport-expanded .library-overlay,.viewport-expanded .left-closed .library-overlay{top:112px}.viewport-top{gap:5px;padding-inline:8px}.viewport-top .gpu-badge{display:none}.viewport-controls button{font-size:11px}}.unified-editor{--hit:32px;--gap:4px}.unified-editor.density-standard{--hit:40px;--gap:7px}.unified-editor button,.unified-editor input,.unified-editor select,.unified-editor .field,.unified-editor .inline{min-height:var(--hit)}.unified-editor button{min-width:var(--hit);padding:4px 7px;border-radius:4px;gap:4px}.unified-editor input,.unified-editor select{padding:3px 6px;border-radius:4px}.unified-editor .field{margin:3px 0;gap:5px}.unified-editor .panel-section{padding:10px 9px;border-bottom:1px solid var(--line)}.unified-editor h3{margin-bottom:7px;letter-spacing:.5px}.unified-editor p{line-height:1.5;margin-bottom:6px}.unified-editor .full{margin-top:4px}.unified-editor .row{gap:4px}.editor-header{height:42px;min-height:42px;display:flex;align-items:center;gap:4px;padding:3px 6px;background:#151924;border-bottom:1px solid var(--line);z-index:45}.editor-header .compact-brand{font-size:20px;font-style:italic;min-width:30px;color:var(--accent);padding:0;border:0;letter-spacing:0}.editor-header .project-title{width:135px;min-width:80px;font-size:12px}.editor-header .save-state{font-size:9px;max-width:100px;overflow:hidden}.editor-header nav{display:flex;gap:2px}.editor-header nav button{font-size:11px;background:transparent;border-color:transparent}.editor-header .history-buttons{display:flex;gap:1px}.editor-header .offline{font-size:8px;white-space:nowrap}.layout-menu{position:relative}.layout-menu summary{cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;list-style:none}.popover{position:absolute;right:0;top:36px;min-width:190px;background:var(--raised);border:1px solid var(--line);padding:8px;box-shadow:0 10px 25px #0008;z-index:80}.unified-editor .editor{grid-template-columns:var(--explorer-width) minmax(0,1fr) var(--inspector-width);min-height:150px;position:relative}.unified-editor .editor.left-closed{grid-template-columns:minmax(0,1fr) var(--inspector-width)}.unified-editor .editor.right-closed{grid-template-columns:var(--explorer-width) minmax(0,1fr)}.unified-editor .editor.left-closed.right-closed{grid-template-columns:minmax(0,1fr)}.explorer-dock,.inspector-dock{min-height:0;min-width:0;display:flex;position:relative;overflow:hidden}.explorer-dock .sidebar{width:100%;height:100%;border:0}.inspector-dock .context-inspector{width:100%;height:100%;display:flex;flex-direction:column;min-height:0}.context-inspector>select{width:calc(100% - 12px);margin:4px 6px;flex-shrink:0;border-color:transparent;background:var(--raised)}.context-inspector>.inspector{width:100%;min-height:0;flex:1;border:0}.resize-handle{touch-action:none;flex-shrink:0;background:transparent;z-index:20;outline-offset:-2px}.resize-handle:hover,.resize-handle:focus-visible{background:var(--accent-bg)}.resize-x{position:absolute;top:0;bottom:0;width:7px;right:0;cursor:col-resize}.inspector-dock>.resize-x{left:0;right:auto}.resize-y{height:7px;width:100%;cursor:row-resize;border-top:1px solid var(--line)}.explorer{display:flex;flex-direction:column;padding:0;overflow:hidden}.explorer-search{display:flex;gap:3px;padding:6px}.explorer-search input{width:0;flex:1}.explorer .inspector-tabs{padding:4px}.scene-tree{padding:2px 5px;max-height:140px;overflow:auto;flex-shrink:0}.scene-tree>button{display:flex;width:100%;justify-content:flex-start;border:0;background:transparent;overflow:hidden;text-overflow:ellipsis}.bone-tree{flex:1;min-height:60px;overflow:auto;overscroll-behavior:contain}.bone-tree-row{display:flex;align-items:center}.bone-tree-row .tree-expander{width:22px;min-width:22px;padding:0;border:0;background:transparent}.bone-tree-row .bone{flex:1;text-align:left;justify-content:flex-start;min-height:32px;height:32px;margin:0;padding:0 4px;border-radius:0;border:0;font-size:11px;overflow:hidden;text-overflow:ellipsis}.compact-row{padding:4px 6px;color:var(--muted);font-size:10px;justify-content:space-between}.compact-row button{font-size:10px;padding:2px 4px}.explorer-list{padding:6px;overflow:auto}.explorer-list>button{width:100%;display:flex;justify-content:space-between;margin-bottom:3px}.explorer-list small{font-size:9px;color:var(--muted)}.unified-editor .viewport-top{height:34px;min-height:34px;padding:0 7px;gap:5px}.unified-editor .viewport-label{font-size:9px;letter-spacing:.5px}.unified-editor .viewport-controls button{font-size:10px;padding:2px 5px}.unified-editor .viewport-controls svg{width:14px;height:14px}.unified-editor .touch-toolbar{min-height:36px;padding:2px 6px;gap:4px;overflow-x:auto;flex-wrap:nowrap}.unified-editor .tool-group{gap:1px}.unified-editor .tool-group button{min-width:32px}.unified-editor .touch-toolbar select{width:auto;max-width:100px}.unified-editor .transport{min-height:38px;height:38px;gap:4px;padding:2px 7px;overflow:auto;flex-shrink:0}.unified-editor .transport-time{min-width:106px}.unified-editor .transport-time strong{font-size:16px}.unified-editor .transport-time small{display:none}.unified-editor .transport>select{width:72px}.unified-editor .transport .inline{font-size:10px}.unified-editor .record{min-width:70px}.unified-editor .timeline-dock{height:var(--timeline-height);min-height:150px;position:relative;flex-shrink:0;display:flex;flex-direction:column}.unified-editor .clip-actions{height:34px;min-height:34px;padding:1px 7px;gap:3px;overflow:auto}.unified-editor .clip-actions button{font-size:10px;min-height:30px}.unified-editor .timeline{min-height:0;height:auto;flex:1;display:flex;flex-direction:column}.unified-editor .timeline-scroll{min-height:0;flex:1}.unified-editor .timeline-tools{padding:3px 7px;min-height:32px;gap:4px}.unified-editor footer{height:20px;min-height:20px;font-size:9px;padding:0 7px}.unified-editor footer button{min-height:18px;padding:0 4px;font-size:9px;border:0}.unified-editor .library-overlay{left:0;right:0}.unified-editor.viewport-expanded .editor-header{display:flex}.unified-editor.viewport-expanded .editor{display:grid;grid-template-columns:minmax(0,1fr)}.unified-editor.viewport-expanded .explorer-dock,.unified-editor.viewport-expanded .inspector-dock{position:absolute;top:37px;bottom:42px;z-index:32;box-shadow:0 8px 26px #0008}.unified-editor.viewport-expanded .explorer-dock{left:8px;width:var(--explorer-width)}.unified-editor.viewport-expanded .inspector-dock{right:8px;width:var(--inspector-width)}.unified-editor.viewport-expanded .timeline-dock{height:var(--timeline-height);bottom:38px}.unified-editor .timeline-dock[hidden]{display:none}.command-palette{max-width:500px}.command-palette>input{width:100%}.command-palette [role=menu]{max-height:55dvh;overflow:auto;margin:6px 0}.command-palette [role=menuitem]{display:flex;width:100%;justify-content:space-between;border:0;background:transparent;text-align:left}.command-palette small{color:var(--muted)}.export-dialog video{width:100%;max-height:50dvh;background:#000}.dialog-close{float:right}@media(max-width:1000px){.editor-header .save-state span,.editor-header .offline,.unified-editor .viewport-label,.unified-editor .gpu-badge{display:none}.editor-header .project-title{width:100px}.unified-editor .touch-toolbar .tool-group span{display:none}}@media(orientation:portrait),(max-width:850px){.unified-editor .editor,.unified-editor .editor.left-closed,.unified-editor .editor.right-closed,.unified-editor .editor.left-closed.right-closed{display:grid;grid-template-columns:minmax(0,1fr)}.unified-editor .explorer-dock,.unified-editor .inspector-dock{position:absolute;top:34px;bottom:38px;z-index:32;box-shadow:0 8px 24px #0009}.unified-editor .explorer-dock{left:0;width:var(--explorer-width)}.unified-editor .inspector-dock{right:0;width:var(--inspector-width)}.editor-header .project-title{width:90px}.editor-header nav button{font-size:10px;padding:3px 5px}.editor-header .export-button span{display:none}}@media(max-width:650px){.editor-header{flex-wrap:wrap;height:auto;min-height:42px}.editor-header .save-state,.editor-header .history-buttons,.unified-editor .viewport-controls span,.unified-editor .transport .state-badge{display:none}}.dock-mode-tabs{display:flex;gap:2px;padding:0 6px;background:var(--surface);position:absolute;right:6px;top:8px}.unified-editor .dock-mode-tabs button{min-height:28px;font-size:10px}.unified-editor .clip-actions{padding-right:165px}.dopesheet{min-height:0;flex:1;display:flex;flex-direction:column;background:var(--bg)}.sheet-tools{display:flex;gap:3px;padding:3px 6px;overflow:auto;flex-shrink:0}.sheet-tools>select{width:160px;flex-shrink:0}.sheet-tools>input{width:130px;flex-shrink:0}.sheet-tools label{display:flex;align-items:center;gap:3px;white-space:nowrap}.sheet-tools input[type=number]{width:65px}.sheet-tools input[type=range]{width:70px}.sheet-scroll{min-height:40px;flex:1;overflow:auto;touch-action:pan-x pan-y;overscroll-behavior:contain}.sheet-grid{position:relative;background-image:linear-gradient(to right,#2c324588 1px,transparent 1px),linear-gradient(to bottom,#2c324544 1px,transparent 1px)}.sheet-row{height:30px;position:absolute;left:0;right:0}.sheet-label{position:sticky;left:0;display:flex;width:155px;align-items:center;height:30px;background:var(--surface);z-index:3;font-size:11px;border-right:1px solid var(--line)}.sheet-label>span{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.unified-editor .sheet-label button{min-width:26px;min-height:28px;padding:0;background:transparent;border:0}.unified-editor .sheet-key{position:absolute;top:0;transform:translate(-50%);min-width:26px;width:26px;min-height:30px;height:30px;padding:0;border:0;background:transparent;color:var(--accent);touch-action:none}.sheet-key.selected{color:var(--green);text-shadow:0 0 7px var(--green);background:#9ce2c533!important}.selection-box{position:absolute;border:1px solid var(--accent);background:#b7a7ff22;pointer-events:none;z-index:5}.sheet-curve{display:flex;gap:12px;padding:4px 8px;min-height:100px;overflow:auto}.sheet-curve>div:first-child{width:220px;flex-shrink:0}.curve-editor{width:240px;display:flex;align-items:center;gap:6px}.curve-editor svg{min-width:130px;width:150px;height:150px;touch-action:none}.curve-editor .row{max-width:100px}.curve-grid{fill:none;stroke:var(--line);stroke-width:1}.curve-handles{fill:none;stroke:var(--muted);stroke-width:1}.curve-path{fill:none;stroke:var(--accent);stroke-width:3}.curve-editor circle{fill:var(--accent);stroke:#fff;stroke-width:1;cursor:grab}.bone-gizmo{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:12;overflow:visible}.gizmo-axis{fill:none}.gizmo-axis.axis-0{color:#f7819b}.gizmo-axis.axis-1{color:#85e0ae}.gizmo-axis.axis-2{color:#85b5ff}.gizmo-visible{stroke:currentColor;stroke-width:2.5;filter:drop-shadow(0 1px 2px #000)}.gizmo-hit{stroke:transparent;stroke-width:18;pointer-events:stroke;touch-action:none;cursor:grab}.gizmo-axis text{fill:currentColor;font-size:12px}.rig-flag{font-size:10px;margin:1px 4px 1px 0}.graph-editor .row>select{width:130px}.node-scroll{height:240px;overflow:auto;border:1px solid var(--line);margin:4px 0;background:radial-gradient(#43495b 1px,transparent 1px);background-size:14px 14px}.node-canvas{position:relative}.node-links{position:absolute;width:100%;height:100%;pointer-events:none}.node-links path{fill:none;stroke:var(--accent);stroke-width:3;pointer-events:stroke;cursor:pointer}.graph-node{position:absolute;width:155px;background:var(--raised);border:1px solid var(--line);border-radius:5px;overflow:hidden}.graph-node.selected{border-color:var(--accent)}.unified-editor .node-title{width:100%;background:#39314f;border:0;border-radius:0;font-size:10px;justify-content:flex-start;touch-action:none}.node-sockets{display:flex;justify-content:space-between;align-items:flex-start}.node-sockets>div{min-width:0}.unified-editor .node-sockets button{display:flex;width:100%;font-size:9px;min-height:26px;padding:2px 3px;background:transparent;border:0}.node-properties{padding:5px}.node-properties .field input{width:55px}.graph-expanded{position:fixed;inset:55px 20px 100px;background:var(--surface);z-index:60;display:flex;flex-direction:column;padding:10px;box-shadow:0 0 0 100vmax #0008;overflow:auto}.graph-expanded .node-scroll{flex:1;min-height:250px}.canvas-wrap .backdrop-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.canvas-wrap canvas[aria-label="3D PMX 뷰포트"]{position:relative}.unified-editor{height:var(--app-height,100dvh)}.import-progress{position:fixed;inset:0;z-index:140;background:#10131c66;display:grid;place-items:center;cursor:progress}.import-progress>div{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 20px;background:var(--surface);border:1px solid var(--line);border-radius:5px;box-shadow:0 8px 30px #0008}.render-compare-image{position:relative;width:100%;overflow:hidden;background:#151820}.render-compare-image img{display:block;width:100%;height:auto}.render-compare-image .compare-b{position:absolute;inset:0;height:100%;object-fit:fill}.render-compare small{display:block}.render-compare input[type=range]{width:100%}
