:root{color:#e7f1fa;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface:#0c1d2b;--border:#294557;--cyan:#53dce7;--muted:#91a8bc;font-synthesis:none;background:#091622;font-family:Segoe UI,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid var(--border);color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;padding:9px 19px}button:hover{background:#173344;border-color:#53dce7}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--cyan);border-color:var(--cyan);color:#061923;font-weight:600}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}input[type=range]{accent-color:var(--cyan);cursor:pointer;width:100%;margin:12px 0 0}input[type=checkbox]{accent-color:var(--cyan);vertical-align:middle;width:18px;height:18px;margin:0 9px 0 0}h1,h2{margin:0}h1{letter-spacing:.2px;font-size:27px;font-weight:650}h2{color:#c8e9f2;font-size:18px;font-weight:600}.app{min-height:100dvh;padding:0 15px}.app-header{border-bottom:1px solid var(--border);align-items:center;gap:15px;height:64px;display:flex}.face-icon{color:var(--cyan);border:2px solid var(--cyan);border-radius:6px;padding:6px 3px;font-size:17px;line-height:1}.header-status{color:var(--muted);margin-left:auto;font-size:15px}.layout{grid-template-columns:minmax(0,2.14fr) minmax(325px,1fr);gap:10px;padding-top:10px;display:grid}.main-column,.side-column{flex-direction:column;gap:10px;min-width:0;display:flex}.panel{background:var(--surface);border:1px solid var(--border);border-radius:5px}.presets{align-items:center;gap:20px;height:68px;padding:15px 18px;display:flex}.preset-buttons{flex-wrap:wrap;gap:10px;display:flex}.preset-buttons button{min-width:80px}.preview{padding:14px 17px 0}.preview h2{margin-bottom:15px}.face-canvas{border:1px solid var(--border);border-radius:5px;width:100%;height:clamp(250px,35.4vh,440px);display:block}.preview-status{color:var(--muted);justify-content:space-between;padding:17px 0;font-size:14px;display:flex}.preview-status strong{color:var(--cyan);margin-left:14px;font-size:17px}.preview-status output{color:#e7f1fa;margin-left:10px;font-family:Consolas,monospace}.timeline{flex:1;min-height:300px;padding:16px 18px}.timeline-toolbar{align-items:center;gap:10px;margin:18px 0 20px;display:flex}.duration{color:var(--muted);white-space:nowrap;margin-left:auto;font:14px Consolas,monospace}.tracks{padding-top:5px}.ticks{color:var(--muted);justify-content:space-between;margin:0 0 12px 52px;font:12px Consolas,monospace;display:flex}.track{align-items:center;gap:12px;height:36px;margin:12px 0;display:flex}.track>span{width:40px;color:var(--muted);flex-shrink:0;font-size:14px}.track-bars{background:repeating-linear-gradient(90deg,#0000 0 calc(16.666% - 1px),#294557 16.666%);border:1px solid #1c3444;border-radius:3px;flex:1;min-width:0;height:100%;position:relative}.event{border:none;border-radius:3px;min-width:3px;padding:0;font-size:12px;position:absolute;top:4px;bottom:4px;overflow:hidden}.event.face{background:#2996a7}.event.viseme{background:#b8814a}.event.gaze{background:#35679f}.playhead{pointer-events:none;background:#72eef6;width:2px;position:absolute;top:-9px;bottom:-9px}.seek{display:block;width:calc(100% - 52px)!important;margin-left:52px!important}.feedback{height:22px;color:var(--muted);padding-top:9px;font-size:12px}.error{color:#ffa3a3}.inspector{padding:17px 19px}.layers{flex-wrap:wrap;gap:20px;margin:22px 0 24px;display:flex}.layers label{cursor:pointer;font-size:15px}.slider-row{color:#cbd8e5;margin-bottom:20px;font-size:14px;display:block}.slider-row>span{justify-content:space-between;display:flex}.slider-row output{color:#9db7ca;font:13px Consolas,monospace}.inspector-actions{gap:10px;margin-top:27px;display:flex}.inspector-actions button{padding:9px 16px}.log{flex:1;min-height:300px;padding:16px 18px}.log-table{height:310px;margin-top:20px;overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}th{background:var(--surface);color:var(--muted);border-bottom:1px solid var(--border);padding:9px 0;font-weight:400;position:sticky;top:0}td{color:#c7d9e5;border-bottom:1px solid #192f40;padding:11px 0}td:first-child,td:nth-child(2){font-family:Consolas,monospace}footer{color:var(--muted);padding:15px 3px;font-size:12px}.log-table::-webkit-scrollbar{width:6px}.log-table::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}@media (height>=950px){.layout{height:calc(100dvh - 110px)}.log-table{height:calc(100% - 43px)}.log{min-height:260px}.timeline{min-height:290px}}@media (width<=1100px){.presets{flex-direction:column;align-items:flex-start;gap:10px;height:auto}.preset-buttons button{min-width:65px;padding:8px 12px}.timeline-toolbar{flex-wrap:wrap}.layers{gap:12px}}@media (width<=800px){.layout{grid-template-columns:1fr}.app{padding:0 10px}.app-header{gap:10px;height:76px}h1{font-size:21px}.header-status{max-width:60px;font-size:11px}.face-canvas{height:280px}.preview-status{font-size:12px}.side-column{grid-template-columns:1fr;display:grid}.timeline-toolbar button{padding:8px 10px;font-size:12px}.duration{font-size:12px}.presets{padding:13px}.preset-buttons{gap:6px}.preset-buttons button{min-width:0}.log-table{height:230px}.inspector{padding:18px}.layers{gap:22px}.timeline{padding:15px 12px}}.layout{padding-top:0}.face-icon{border:0;border-radius:0;flex-shrink:0;width:43px;height:34px;padding:0}.preview{padding-top:12px}.preview h2{margin-bottom:7px;font-size:16px;line-height:20px}.slider-row{margin-bottom:14px}.layers{margin-bottom:20px}.inspector-actions{margin-top:23px}input[type=range]{appearance:none;background:0 0;height:15px}input[type=range]::-webkit-slider-runnable-track{background:#203d52;border-radius:5px;height:5px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--cyan);border-radius:50%;width:15px;height:15px;margin-top:-5px}input[type=range]::-moz-range-track{background:#203d52;border-radius:5px;height:5px}input[type=range]::-moz-range-thumb{background:var(--cyan);border:0;border-radius:50%;width:15px;height:15px}.slider-row{grid-template-columns:120px minmax(0,1fr) 55px;align-items:center;column-gap:12px;height:56px;margin:0;font-size:16px;display:grid}.slider-row>span{display:block}.slider-row output{text-align:right;white-space:nowrap;font:15px Consolas,monospace}.slider-row input{margin:0}.slider-row input::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--cyan) 0,var(--cyan) var(--progress),#203d52 var(--progress),#203d52 100%)}.layers{justify-content:space-between;gap:0;margin-bottom:12px}.layers label{font-size:16px}.layers input{width:20px;height:20px}.inspector{min-height:502px}.inspector h2,.log h2{font-size:22px}.inspector-actions{gap:16px;margin-top:32px}.inspector-actions button{flex:1;padding:13px 10px;font-size:16px}.inspector-actions button.primary{flex:1.3}button svg{flex-shrink:0;width:20px;height:20px}button{justify-content:center;align-items:center;gap:9px;display:inline-flex}.timeline h2{font-size:20px}.timeline-toolbar .primary{min-width:126px}.face-icon{width:48px;height:44px}@media (width>=801px){h1{font-size:32px}.app-header{gap:22px}.preset-buttons button{min-width:86px}}@media (width<=800px){.face-icon{width:38px;height:36px}.slider-row{grid-template-columns:95px minmax(0,1fr) 55px;column-gap:9px;font-size:14px}.slider-row output{font-size:13px}.timeline-toolbar{gap:7px}.timeline-toolbar .primary{min-width:0}.timeline-toolbar button{gap:5px;padding:8px}.timeline-toolbar button svg{width:16px;height:16px}.inspector h2,.log h2{font-size:20px}}@media (width>=801px){.preview-status{font-size:16px}.preview-status strong{font-size:20px}}
