.training-device-summary[data-v-f2f1ed25]{z-index:20;pointer-events:none;flex-direction:column;align-items:flex-start;gap:4px;max-width:calc(100% - 24px);max-height:25%;display:flex;position:absolute;top:12px;left:12px;overflow:auto}.training-device-item[data-v-f2f1ed25]{color:#bccbb0;text-align:left;pointer-events:auto;background:#101710d9;border:1px solid #ffffff14;border-radius:5px;align-items:center;gap:7px;max-width:100%;padding:6px 9px;font-size:11px;display:flex}.training-device-item strong[data-v-f2f1ed25]{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:500;overflow:hidden}.training-device-item>span[data-v-f2f1ed25]{flex-shrink:0}:root{color:#f1f3eb;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#101210;--panel:#171a17;--line:#30362d;--text:#f1f3eb;--muted:#a0a79c;--green:#c5f36b;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;background:#101210;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent;outline-offset:4px}button{cursor:pointer;color:inherit;border:0}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--green)}a{color:inherit;text-decoration:none}button svg,a svg{flex-shrink:0}h1,h2,h3,p{margin:0}::selection{background:var(--green);color:var(--bg)}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.accent{color:var(--green)}.small{font-size:11px}.tiny-dot{background:#69735f;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.tiny-dot.live{background:var(--green);box-shadow:0 0 0 3px #c5f36b10}.button{border-radius:5px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 18px;font-size:13px;font-weight:500;display:inline-flex}.primary{background:var(--green);color:#18220d}.primary:hover:not(:disabled){background:#d1fa87}.text-button{color:var(--muted);white-space:nowrap;background:0 0;justify-content:center;align-items:center;gap:6px;padding:5px 0;font-size:11px;display:inline-flex}.text-button:hover:not(:disabled){color:var(--green)}.icon-button{color:var(--muted);background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:5px;display:inline-flex}.icon-button:hover,.icon-button[aria-pressed=true]{color:var(--green);background:#c5f36b0c}.error-text{color:#f7ab98}.app-shell{flex-direction:column;min-height:100svh;display:flex}.brand{letter-spacing:.5px;align-items:center;gap:11px;width:-moz-fit-content;width:fit-content;font-size:18px;font-weight:500;display:inline-flex}.brand img{object-fit:contain}.login-page{flex:1;grid-template-columns:minmax(0,3fr) minmax(0,2fr);min-height:620px;display:grid}.login-intro{isolation:isolate;background:#152015;flex-direction:column;padding:44px clamp(36px,5.5vw,104px);display:flex;position:relative;overflow:hidden}.login-intro:before,.login-intro:after{content:"";z-index:-1;pointer-events:none;border:1px solid #c5f36b12;border-radius:50%;width:640px;height:640px;position:absolute;bottom:-260px;right:-400px}.login-intro:after{width:480px;height:480px;bottom:-180px;right:-320px}.intro-content{flex-direction:column;flex:1;justify-content:center;padding:64px 0;display:flex}.intro-eyebrow{color:#b1c69b;letter-spacing:3px;margin-bottom:24px;font-size:14px}.intro-content h1{letter-spacing:-.04em;font-size:clamp(34px,3.5vw,60px);font-weight:600;line-height:1.45}.intro-content h1 span{color:var(--green)}.intro-description{color:#a5b39b;margin-top:24px;font-size:15px;line-height:1.9}.intro-features{color:#b6c5aa;flex-wrap:wrap;gap:14px 24px;margin:44px 0 0;padding:0;font-size:12px;list-style:none;display:flex}.intro-features li{align-items:center;gap:8px;display:flex}.intro-features svg{color:#9bb47f}.intro-footer{color:#788b6f;letter-spacing:1px;font-size:11px}.login-panel{background:#121612;justify-content:center;align-items:center;min-width:0;padding:48px 28px;display:flex}.login-card{text-align:center;width:100%;max-width:320px}.login-card h2{letter-spacing:.5px;margin-bottom:12px;font-size:26px;font-weight:500}.login-card>p{font-size:13px}.qr-stage{color:#a9b599;background:#1b2317;border:1px solid #343e2c;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:20px;width:232px;max-width:100%;height:232px;margin:36px auto 22px;font-size:12px;display:flex;position:relative}.qr-stage.has-code{background:#fff;border:0;padding:10px}.qr-image{object-fit:contain;width:100%;height:100%;display:block}.scan-symbol{color:#b3ce8a}.qr-corner{border-style:solid;border-color:#7e9558;width:12px;height:12px;position:absolute}.top-left{border-width:2px 0 0 2px;border-top-left-radius:5px;top:-1px;left:-1px}.top-right{border-width:2px 2px 0 0;border-top-right-radius:5px;top:-1px;right:-1px}.bottom-left{border-width:0 0 2px 2px;border-bottom-left-radius:5px;bottom:-1px;left:-1px}.bottom-right{border-width:0 2px 2px 0;border-bottom-right-radius:5px;bottom:-1px;right:-1px}.login-feedback{min-height:34px;color:var(--muted);text-align:center;margin-bottom:6px;font-size:12px;line-height:1.7}.login-button{color:#becdb0;min-height:36px;margin:0 auto;padding:8px 12px;font-size:12px}.login-card .login-retain{color:#778570;margin-top:36px;font-size:11px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.app-shell.has-account{height:100svh;min-height:0;overflow:hidden}.video-app{background:#000;flex:1;min-height:0;position:relative;overflow:hidden}.video-app:fullscreen{width:100%;height:100%}.video-stage{background:#000;gap:0;display:grid;position:absolute;inset:0 0 62px}.video-stage.is-idle{background:#252b22;gap:1px}.camera-tile{background:#000;min-width:0;min-height:0;position:relative;overflow:hidden}.replay-canvas{object-fit:contain;width:100%;height:100%;display:block}.idle-camera{color:#859779;background:#10150f;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.idle-camera:hover{background:#151c12}.idle-camera>span:last-child{color:#91a280;font-size:11px}.camera-number{color:#d5e3c7;font-size:25px}.empty-stage{color:#68795b;background:#0b0e0a;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:absolute;inset:0}.empty-stage .text-button{color:#aabc9b;font-size:13px}.buffer-count{color:#718263;background:#000;justify-content:center;align-items:center;font-size:32px;display:flex;position:absolute;inset:0}.no-signal{color:#687361;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex;position:absolute;inset:0}.video-app.is-training .video-stage{inset:0}.toolbar-dock{z-index:30;pointer-events:none;height:62px;position:absolute;inset:auto 0 0}.is-training .toolbar-dock{height:28px}.is-training.toolbar-open .toolbar-dock{height:90px}.training-toolbar{pointer-events:auto;white-space:nowrap;z-index:30;background:#171c16;align-items:center;gap:12px;height:62px;padding:0 18px;display:flex;position:absolute;bottom:0;left:0;right:0;container-type:inline-size}.is-training .training-toolbar{background:#171c16f5}.toolbar-main,.toolbar-extras{flex-shrink:0;align-items:center;gap:12px;display:flex}.toolbar-extras{margin-left:auto}.training-toolbar .is-overflowed{visibility:hidden;pointer-events:none;width:max-content;position:absolute;left:-10000px}@container (width<=960px){.training-toolbar .toolbar-main{gap:10px}.toolbar-main>.tool-button{flex-shrink:0;width:32px;height:36px}.toolbar-main>.tool-button>span,.toolbar-delay>span{display:none}.training-toolbar .toolbar-delay{gap:8px;width:150px}.training-toolbar .delay-mode button{padding:8px 10px}}.toolbar-account{color:#91a381;text-overflow:ellipsis;max-width:110px;font-size:11px;overflow:hidden}.delay-mode{background:#293322;border-radius:24px;flex-shrink:0;align-items:center;padding:3px;display:flex}.delay-mode button{color:#a6b996;background:0 0;border-radius:20px;padding:8px 14px;font-size:12px}.delay-mode button.selected{background:var(--green);color:#24350f;font-weight:600}.toolbar-delay{color:#aabd99;align-items:center;gap:12px;width:clamp(150px,16cqw,300px);font-size:12px;display:flex}.toolbar-delay input{appearance:none;background:linear-gradient(to right, var(--green) var(--range-progress), #3b4931 var(--range-progress));cursor:pointer;border-radius:3px;flex:1;min-width:60px;height:4px}.toolbar-delay input::-webkit-slider-thumb{appearance:none;background:var(--green);border-radius:50%;width:14px;height:14px}.toolbar-delay input::-moz-range-thumb{background:var(--green);border:0;border-radius:50%;width:14px;height:14px}.toolbar-delay output{min-width:35px;color:var(--green);text-align:right;font-size:15px}.toolbar-delay small{color:#96aa84;font:10px var(--sans);margin-left:4px}.app-menu{position:relative}.app-menu-content{background:#1c2518;border:1px solid #425238;border-radius:5px;min-width:150px;padding:12px;position:absolute;bottom:30px;right:0}.app-menu-content>span{color:#a9bb97;margin:8px 3px;font-size:11px;display:block}.app-menu-content .tool-button{justify-content:flex-start;width:100%}.camera-overlay{z-index:5;opacity:0;visibility:hidden;flex-direction:column;align-items:flex-end;gap:6px;transition:opacity .12s;display:flex;position:absolute;bottom:10px;right:10px}.camera-tile:hover .camera-overlay,.camera-tile:focus-visible .camera-overlay{opacity:1;visibility:visible}.camera-tile:has(:focus-visible) .camera-overlay{opacity:1;visibility:visible}.camera-actions{background:#0e160edb;border-radius:5px;gap:2px;padding:4px;display:flex;box-shadow:0 2px 10px #0004}.camera-actions .icon-button{color:#d3dfc9;width:30px;height:30px}.camera-actions .icon-button[aria-pressed=true]{color:var(--green);background:#c5f36b22}.camera-popover{color:#c0d1b0;background:#172211f5;border-radius:5px;width:230px;max-width:100%;padding:14px;box-shadow:0 3px 16px #0006}.camera-popover label{justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.camera-popover label+label{margin-top:10px}.camera-popover select{width:114px}.camera-popover p{color:#90a37d;margin-top:10px;font-size:10px}.is-training .camera-tile .camera-overlay{bottom:28px}.toolbar-divider{background:#37432d;width:1px;height:24px}.tool-button{color:#aabd99;background:0 0;justify-content:center;align-items:center;gap:7px;padding:9px 3px;font-size:11px;display:flex}.tool-button:hover{color:var(--green)}.toolbar-handle{color:#90a37f;z-index:31;cursor:pointer;pointer-events:auto;background:#10160dcc;border-radius:8px 8px 0 0;justify-content:center;align-items:center;width:56px;height:28px;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.toolbar-open .toolbar-handle{bottom:62px}.toolbar-handle:hover,.toolbar-handle:focus-visible{color:var(--green);background:#25301c}.bar-spacer{flex:1}.button.compact{min-height:33px;padding:7px 13px;font-size:12px}.secondary{color:#c0d2ae;background:#20291b;border:1px solid #3a482f}.secondary:hover:not(:disabled){background:#2d3a23}.danger{color:#e5ad94;background:#37251d;border:1px solid #6b4530}.stop-button{color:#f3caaa;background:#50392d}.app-notice{z-index:40;color:#c6d4b9;background:#26321ff5;border:1px solid #546943;border-radius:5px;align-items:center;gap:12px;padding:10px 13px;font-size:12px;line-height:1.5;display:flex;position:absolute;top:58px;left:16px;right:16px}.app-notice .icon-button{margin-left:auto}.app-notice.error{color:#ecc1a9;background:#39291ef5;border-color:#78543e}.editor-page{background:var(--bg);z-index:10;flex-direction:column;min-height:0;display:flex;position:absolute;inset:0}.page-bar{border-bottom:1px solid var(--line);background:#171c15;flex-shrink:0;align-items:center;gap:12px;height:54px;padding:0 18px;display:flex}.page-bar h1{font-size:14px;font-weight:500}.grid-edit-body{flex:1;grid-template-columns:minmax(0,1fr) 250px;min-height:0;display:grid}.grid-edit-main{flex-direction:column;min-width:0;min-height:0;padding:18px;display:flex}.grid-dimensions{color:#859a72;align-items:center;gap:12px;margin-bottom:18px;font-size:12px;display:flex}.grid-dimensions label{align-items:center;gap:8px;display:flex}input[type=number]{color:#d6e5c8;background:#11170d;border:1px solid #3d4b31;border-radius:4px;width:64px;padding:7px 8px;font-size:12px}.grid-presets{gap:18px;margin-left:auto;display:flex}.grid-editor{touch-action:none;-webkit-user-select:none;user-select:none;background:#0e140b;border:1px solid #36462b;flex:1;min-height:230px;display:grid;position:relative}.fine-grid{background-image:linear-gradient(90deg,#7a98682b 1px,#0000 1px),linear-gradient(#7a98682b 1px,#0000 1px);background-size:calc(100% / var(--grid-columns)) calc(100% / var(--grid-rows));cursor:crosshair}.placement-ghost{z-index:5;border:2px solid var(--green);pointer-events:none;color:var(--green);background:#c5f36b22;justify-content:center;align-items:center;font-size:12px;display:flex}.placement-ghost.invalid{color:#f3a688;background:#f3a68822;border-color:#f3a688}.density-presets{border:1px solid #3b4b30;border-radius:5px;padding:3px;display:flex}.density-presets button{color:#9fb68c;background:0 0;border-radius:3px;padding:6px 12px;font-size:11px}.density-presets .selected{color:var(--green);background:#324822}.grid-tile{z-index:1;cursor:grab;background:#23311b;border:1px solid #6a8250;min-width:0;min-height:0;position:relative}.grid-tile.selected{outline:2px solid var(--green);outline-offset:-2px;background:#2c3d20}.tile-select{color:#bacfa7;cursor:grab;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:9px;width:100%;height:100%;display:flex}.tile-select strong{font:28px var(--mono);color:var(--green)}.tile-select>span{font:11px var(--mono)}.tile-grip{color:#8aab6b;pointer-events:none;position:absolute;top:9px;left:9px}.tile-resize{color:#d2ecb8;cursor:nwse-resize;background:#546f3a;justify-content:center;align-items:center;width:27px;height:27px;display:flex;position:absolute;bottom:0;right:0}.editor-help{color:#819172;margin-top:12px;font-size:11px;line-height:1.7}.editor-error{color:#f0b59b;background:#36251c;border-radius:4px;margin-bottom:12px;padding:9px 12px;font-size:12px}.grid-properties{border-left:1px solid var(--line);background:#171d13;padding:26px 20px;overflow:auto}.grid-properties h2{font-size:15px;font-weight:500}.property-fields{grid-template-columns:1fr 1fr;gap:16px;margin:25px 0;display:grid}.property-fields label{color:#a9bc97;font-size:11px}.property-fields input{width:100%;margin-top:8px;display:block}.order-controls{flex-direction:column;gap:9px;display:flex}.remove-camera{width:100%;margin-top:25px}.property-empty{color:#a2b390;margin-top:15px;font-size:12px;line-height:1.8}.settings-content{width:100%;max-width:960px;margin:0 auto;padding:32px;overflow:auto}.settings-section{border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:28px}.settings-section h2{font-size:14px;font-weight:500}.settings-fields{max-width:440px;margin-top:20px}.setting-row{color:#becdb0;justify-content:space-between;align-items:center;gap:20px;margin-top:22px;font-size:12px;display:flex}.setting-row>select{width:170px}select{color:#c9dab9;background:#11170d;border:1px solid #3d4b31;border-radius:4px;min-width:0;padding:8px;font-size:12px}.field-hint{color:#8b9c7a;margin-top:12px;font-size:11px;line-height:1.7}.segmented{background:#0d1409;border:1px solid #36472a;border-radius:5px;padding:3px;display:flex}.segmented button{color:#a4b891;background:0 0;border-radius:3px;padding:8px 12px;font-size:11px}.segmented .selected{color:var(--green);background:#2a3b1c}.section-label{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.camera-setting{border-bottom:1px solid #242e1d;align-items:center;gap:18px;padding:14px 0;display:flex}.camera-setting-number{color:#bdd3a7;min-width:30px;font-size:18px}.camera-setting>select{flex:1}.update-banner,.global-notice{color:#d6e2c5;background:#2c371e;flex-shrink:0;justify-content:center;align-items:center;gap:12px;padding:8px 24px;font-size:12px;display:flex}.update-banner .text-button{color:var(--green);text-decoration:underline}.global-notice{color:#dbc7a6;background:#32291d}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:800px){.login-page{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.login-intro{padding:32px}.intro-content h1{font-size:34px}.intro-features{flex-direction:column;gap:16px}.training-toolbar{gap:12px;padding:0 12px}.toolbar-delay{gap:8px;width:150px}.toolbar-delay>span{display:none}.delay-mode button{padding:8px 10px;font-size:11px}.toolbar-main,.toolbar-extras{gap:12px}.grid-presets{display:none}.grid-edit-body{grid-template-columns:minmax(0,1fr) 210px}.grid-properties{padding:22px 14px}.grid-edit-main{padding:14px}}@media (max-width:600px){.login-page{flex-direction:column;min-height:0;display:flex}.login-intro{padding:24px}.brand{font-size:16px}.intro-content{padding:32px 0 4px}.intro-eyebrow{margin-bottom:12px;font-size:12px}.intro-content h1{font-size:30px}.intro-description{margin-top:14px;font-size:13px}.intro-features,.intro-footer{display:none}.login-panel{flex:1;padding:36px 24px}.login-card h2{font-size:23px}.qr-stage{margin-top:24px}.tool-button{flex-direction:column;gap:4px;font-size:9px}.training-toolbar{gap:10px;overflow-x:auto}.toolbar-delay{min-width:150px}.toolbar-divider{display:none}.grid-edit-body{flex-direction:column;display:flex;overflow:auto}.grid-edit-main{min-height:380px}.grid-properties{border-left:0;border-top:1px solid var(--line);overflow:visible}.property-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.order-controls{flex-direction:row}.settings-content{padding:22px 18px}.camera-setting{gap:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.posture-content h2{font-size:15px;font-weight:500}.posture-content .field-hint{margin-top:14px}.device-list{margin:24px 0 0;padding:0;list-style:none}.posture-device{border-bottom:1px solid var(--line);align-items:center;gap:24px;padding:22px 0;display:flex}.device-info{flex:1;min-width:0}.device-info h3{overflow-wrap:anywhere;font-size:15px;font-weight:500}.device-status{color:var(--muted);align-items:center;gap:8px;margin-top:9px;font-size:12px;display:flex}.device-error{white-space:normal;margin-top:10px;font-size:12px;line-height:1.6}.posture-device>.button{flex-shrink:0;min-width:76px}.access-status{justify-content:space-between;align-items:center;gap:12px;padding-bottom:20px;display:flex}.posture-device{flex-wrap:wrap}.device-mount-fields{flex-basis:100%;gap:20px;display:flex}.device-mount-fields label{color:var(--muted);flex:1;gap:8px;font-size:13px;display:grid}.trajectory-view{background:#0f1510;min-width:0;min-height:0;position:relative;overflow:hidden}.trajectory-view>canvas{width:100%;height:100%;display:block}.trajectory-state{color:#8a9b7b;background:#0f1510e8;flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:13px;display:flex;position:absolute;inset:0}.trajectory-controls{color:#d3dfc9;opacity:0;pointer-events:none;background:#0e160eeb;border-radius:5px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:3px;max-width:calc(100% - 16px);padding:4px;transition:opacity .15s;display:flex;position:absolute;bottom:8px;left:auto;right:8px}.trajectory-view:hover .trajectory-controls,.trajectory-view:focus-within .trajectory-controls,.trajectory-controls.force-open{opacity:1;pointer-events:auto}.trajectory-controls .icon-button{width:30px;height:30px}.trajectory-controls select{border:0;width:auto;max-width:100px;height:30px;padding:2px 6px;font-size:12px}.trajectory-seek{width:90px;accent-color:var(--green)}.grid-tile.trajectory-tile{background:#b9ed6620;border-color:#b9ed6677}.action-page{background:var(--bg);flex-direction:column;display:flex;position:absolute;inset:0}.action-body{flex:1;grid-template-columns:220px minmax(0,1fr);min-height:0;display:grid}.action-count{color:#a0b492;font-size:12px}.action-list{background:#151b13;border-right:1px solid #2d3826;flex-direction:column;min-height:0;display:flex}.action-list-items{flex:1;min-height:0;padding:8px;overflow-y:auto}.action-arrow{text-align:left;color:#9cad90;background:0 0;border-radius:5px;width:100%;margin-bottom:4px;padding:15px 12px;display:block}.action-arrow:hover{background:#202b1b}.action-arrow.selected{box-shadow:inset 3px 0 var(--green);color:#d3e8c0;background:#c5f36b18}.action-arrow>span{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.action-arrow strong{font-size:14px;font-weight:500}.action-arrow.selected strong{color:var(--green)}.action-arrow small{color:#788a6e;font-size:10px}.action-arrow time{font:11px var(--mono);white-space:nowrap}.action-cache-note{color:#778a6b;padding:16px 20px;font-size:10px;line-height:1.9}.action-observer{flex-direction:column;min-width:0;min-height:0;display:flex}.action-grid{background:#000;flex:1;gap:0;min-height:0;display:grid}.action-camera,.action-trajectory{contain:layout paint;background:#080b08;min-width:0;min-height:0;position:relative;overflow:hidden}.action-camera canvas,.action-trajectory canvas{width:100%;height:100%;display:block}.action-view-number{color:#d1ddc6;font:10px var(--mono);background:#0c120c99;border-radius:3px;padding:3px 5px;position:absolute;top:10px;left:10px}.action-no-signal{color:#738468;background:#0d120d;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:12px;display:flex;position:absolute;inset:0}.action-empty{color:#7c916f;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex}.action-empty h2{color:#c4d4b9;font-size:17px;font-weight:400}.action-empty p{color:#8b9c80;font-size:12px}.action-playback{background:#171c16;flex-shrink:0;align-items:center;gap:18px;height:62px;padding:0 22px;display:flex}.action-playback output{color:#c6d7b8;font-size:12px}.action-playback input{min-width:50px;accent-color:var(--green);cursor:pointer;flex:1}.action-duration{color:#8fa17f;font-size:11px}.action-entry{color:#c9dab9}.trajectory-dialog{border:1px solid var(--line);width:min(480px,100vw - 32px);color:var(--text);background:var(--panel,#171d15);border-radius:12px;padding:24px;box-shadow:0 20px 100px #0008}.trajectory-dialog::backdrop{background:#0008}.trajectory-dialog header,.trajectory-dialog footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.trajectory-dialog h2{font-size:17px;font-weight:500}.trajectory-dialog footer{justify-content:flex-end;margin-top:24px}.trajectory-dialog label{color:var(--muted);gap:8px;font-size:13px;display:grid}.trajectory-fields{grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;display:grid}.trajectory-dialog .full-field{margin-top:20px}.trajectory-dialog input,.trajectory-dialog select{width:100%;min-width:0}.placement-picker{z-index:3;color:#bbcba8;background:#131c11;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.placement-picker header{align-items:center;gap:12px;font-size:13px;display:flex}.placement-picker canvas{object-fit:contain;aspect-ratio:1;cursor:crosshair;max-width:100%;max-height:calc(100% - 70px)}@media (hover:none){.trajectory-controls{opacity:1;pointer-events:auto}}.device-empty{color:var(--muted);flex-direction:column;align-items:center;gap:16px;padding:84px 0 64px;font-size:13px;display:flex}.device-search-all{margin-top:24px}.action-transport{align-items:center;gap:5px;display:flex}.action-speed{width:76px;color:var(--green);font:12px var(--mono);background:#11170d;border:1px solid #3d4b31;border-radius:4px;padding:7px 8px}.action-playback output{white-space:nowrap;min-width:92px}.update-banner small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.toolbar-update-hint{background:var(--green);border-radius:50%;width:5px;height:5px;position:absolute;top:7px;right:8px}.global-notice .text-button{margin-left:auto}.device-role{color:var(--green);margin-left:10px;font-size:11px;font-weight:400}.wrist-wear{grid-column:1/-1}.sensor-live-caption{color:#a0b492;pointer-events:none;font-size:10px;position:absolute;top:8px;left:14px}.action-insights{background:#141d11;border-top:1px solid #2d3826;flex:none;padding:10px 20px 16px}.action-insights>header{color:#99ae88;align-items:center;gap:16px;margin-bottom:12px;font-size:12px;display:flex}.timer-boundaries{color:#9eb58c;gap:4px;height:16px;margin:8px 86px 14px 106px;font-size:11px;display:flex}.timer-boundaries>div{min-width:60px;position:relative}.timer-boundaries span{position:absolute;right:0;transform:translate(50%)}.timer-boundaries span.start{left:0;right:auto;transform:none}.timer-row{font:12px var(--mono);color:#c2d3b3;align-items:center;gap:16px;margin:12px 0;display:flex}.timer-row>span{width:90px;font:11px var(--sans)}.timer-row>strong{text-align:right;width:70px;font-weight:400}.timer-bands{flex:1;gap:4px;display:flex}.timer-band{background:#27351f;min-width:60px;height:28px;position:relative;overflow:hidden}.timer-band i{opacity:.3;position:absolute;top:0;bottom:0;left:0}.timer-band span{padding:6px 8px;display:block;position:relative}.analysis-insight{grid-template-columns:minmax(240px,1fr) 280px;gap:20px;height:240px;display:grid}.analysis-canvas{min-width:0;min-height:0;position:relative}.analysis-canvas canvas{width:100%;height:100%;display:block}.analysis-controls{color:#a0b492;flex-direction:column;gap:15px;font-size:12px;display:flex;overflow:auto}.analysis-controls label{gap:9px;display:grid}.analysis-controls input{width:100%;accent-color:var(--green)}.analysis-controls .delay-mode{align-self:flex-start}.analysis-controls details{font-size:11px;line-height:1.7}.analysis-controls details ul{padding-left:16px}.analysis-measure{color:#c5dcaf}.action-trajectory:hover .trajectory-controls,.action-trajectory:focus-within .trajectory-controls{opacity:1;pointer-events:auto}.placement-dialog{width:368px}.placement-dialog canvas{cursor:crosshair;width:320px;height:320px;margin-top:16px}
