.skyline-library{position:fixed;z-index:55;top:64px;bottom:24px;left:56px;width:min(310px,calc(100vw - 56px));display:flex;flex-direction:column;background:hsl(var(--studio-card));color:hsl(var(--studio-foreground));border-right:1px solid hsl(var(--studio-divider));box-shadow:12px 0 32px #0a101b40;font:12px var(--font-studio)}.skyline-library>header{display:flex;gap:9px;padding:12px 14px;align-items:center;border-bottom:1px solid hsl(var(--studio-divider))}.skyline-library>header strong{font-size:14px;flex:1}.skyline-library>header>svg{color:var(--accent)}.skyline-library>header span,.skyline-items small{color:hsl(var(--studio-muted))}.skyline-library>header button,.skyline-added button{display:grid;place-items:center;padding:5px;border-radius:5px}.skyline-library button:hover,.skyline-asset[aria-pressed=true],.skyline-categories button[aria-pressed=true]{background:hsl(var(--studio-accent))}.skyline-search{display:flex;align-items:center;gap:7px;padding:0 9px;margin:12px 12px 9px;height:34px;border-radius:7px;border:1px solid hsl(var(--studio-input));color:hsl(var(--studio-muted));background:hsl(var(--studio-secondary));flex-shrink:0}.skyline-search input{width:100%;min-width:0;border:0;background:transparent;color:hsl(var(--studio-foreground));outline:none}.skyline-search:focus-within{border-color:var(--accent)}.skyline-categories{padding:0 12px 8px;display:flex;gap:4px;flex-wrap:wrap}.skyline-categories button,.skyline-tour button{padding:5px 8px;border-radius:5px;white-space:nowrap;color:hsl(var(--studio-muted))}.skyline-categories button[aria-pressed=true],.skyline-tour button[aria-pressed=true]{color:var(--accent);background:hsl(var(--studio-accent))}.skyline-items{margin:0;padding:4px 10px 12px;list-style:none;overflow:auto;min-height:0;scrollbar-width:thin}.skyline-asset{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:6px;border-radius:7px}.skyline-swatch{display:grid;place-items:center;flex:0 0 38px;height:36px;background:color-mix(in srgb,currentColor 17%,hsl(var(--studio-secondary)));border-radius:6px}.skyline-asset>span:nth-child(2){flex:1;min-width:0}.skyline-asset strong,.skyline-asset small{display:block}.skyline-asset small{font-size:10px;margin-top:3px}.skyline-asset>svg{color:hsl(var(--studio-muted));flex-shrink:0}.skyline-empty{padding:18px;color:hsl(var(--studio-muted));text-align:center}.skyline-added{margin:4px 12px;border-block:1px solid hsl(var(--studio-divider));padding:8px 0}.skyline-added summary{cursor:pointer}.skyline-added ul{padding:4px 0 0;margin:0;list-style:none;max-height:120px;overflow:auto}.skyline-added li{display:flex;justify-content:space-between;align-items:center;gap:5px}.skyline-world-bar{z-index:12;position:relative;display:flex;gap:8px;align-items:center;padding:6px 12px;flex-shrink:0;color:hsl(var(--studio-foreground));background:hsl(var(--studio-card));border-bottom:1px solid hsl(var(--studio-divider));font-size:11px}.skyline-tour{display:flex;gap:4px}.skyline-tour button:hover{background:hsl(var(--studio-accent))}.skyline-location{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:hsl(var(--studio-muted))}.skyline-clock{position:relative;margin-left:auto}.skyline-clock summary{display:flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer;list-style:none}.skyline-clock summary::-webkit-details-marker{display:none}.skyline-clock summary span{color:hsl(var(--studio-muted))}.skyline-clock-menu{position:absolute;right:0;top:27px;width:216px;display:grid;gap:7px;padding:11px;background:hsl(var(--studio-card));border:1px solid hsl(var(--studio-divider));border-radius:8px;box-shadow:0 8px 28px #0a102b35}.skyline-clock-menu .setting-row{padding:0;margin:0}.skyline-clock-menu input{width:100%;accent-color:var(--accent)}.skyline-clock-menu small{color:hsl(var(--studio-muted))}.skyline-placement{position:absolute;z-index:6;bottom:82px;left:20px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;max-width:calc(100% - 65px);padding:7px 9px;background:hsl(var(--studio-card));color:hsl(var(--studio-foreground));border:1px solid hsl(var(--studio-divider));border-radius:7px;font-size:11px}.skyline-placement button{display:flex;padding:5px;background:hsl(var(--studio-secondary));border-radius:4px}.skyline-placement button[aria-pressed=true]{color:var(--accent)}.world-stage.is-placing>canvas{cursor:crosshair}.studio .world-title>select{min-width:0;padding:4px 7px;color:hsl(var(--studio-foreground));background:hsl(var(--studio-secondary));border:1px solid hsl(var(--studio-divider));border-radius:6px;font:11px var(--font-studio)}.oak-action-menu{position:relative;flex:0 0 auto}.oak-action-menu>summary{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;list-style:none;cursor:pointer;color:hsl(var(--studio-muted))}.oak-action-menu>summary::-webkit-details-marker{display:none}.oak-action-menu>summary:hover,.oak-action-menu[open]>summary{background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground))}.oak-action-menu>summary:focus-visible{outline:2px solid hsl(var(--studio-primary));outline-offset:2px}.oak-menu-panel{position:absolute;z-index:100;top:calc(100% + 6px);right:0;min-width:190px;max-width:min(310px,calc(100vw - 90px));max-height:70dvh;overflow:auto;padding:6px;border:1px solid hsl(var(--studio-border));border-radius:12px;background:hsl(var(--studio-popover));color:hsl(var(--studio-foreground));box-shadow:var(--studio-shadow, 0 12px 32px #0003)}.oak-action-menu .oak-menu-panel>button{display:flex;align-items:center;justify-content:flex-start;width:100%;height:auto;min-height:36px;gap:8px;margin:0;padding:8px 11px;border:0;border-radius:6px;background:transparent;color:inherit;font:inherit;font-size:12px;text-align:left;white-space:nowrap}.oak-action-menu .oak-menu-panel>button:hover:not(:disabled){background:hsl(var(--studio-secondary))}.oak-menu-panel>hr{margin:5px 6px;border:0;border-top:1px solid hsl(var(--studio-divider))}.oak-menu-panel>label{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:8px 11px;font-size:12px}.oak-menu-panel select{max-width:110px;color:inherit;background:hsl(var(--studio-secondary));border:1px solid hsl(var(--studio-border));border-radius:5px;padding:4px}.oak-menu-panel .danger{color:hsl(var(--studio-danger))}.oak-action-menu.opens-side .oak-menu-panel{inset:auto auto 0 calc(100% + 10px)}.retro-computer-logo{position:relative;display:block;aspect-ratio:1;flex-shrink:0;pointer-events:none}.retro-computer-logo__base{display:block;width:100%;height:100%;object-fit:contain}.retro-computer-logo__mark{position:absolute;left:48.8%;top:36.4%;width:17%;height:19%;object-fit:fill;filter:brightness(0) invert(1);transform:translate(-50%,-50%) skewY(-29deg)}.retro-computer-logo--nav{width:40px;height:40px}.studio.app:has(.parking-world-hud){height:100dvh;overflow:hidden}.parking-panel{--parking-muted: hsl(var(--studio-muted));color:hsl(var(--studio-foreground));font-size:12px;padding:14px 16px 16px}.parking-live-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:10px 0}.parking-live-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border);border-radius:7px;background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground));padding:7px 10px;min-height:30px;font:11px var(--font-studio);cursor:pointer}.parking-live-actions button:disabled{opacity:.4;cursor:default}.parking-demo{margin-top:10px}.parking-demo.running{border-top:1px solid var(--border);padding-top:10px}.parking-demo-status{display:flex;align-items:center;flex-wrap:wrap;gap:6px;color:var(--accent);font-size:11px}.parking-demo-status strong{font-weight:600}.parking-demo-status>span{width:100%;color:var(--studio-success);font-family:var(--font-code)}.parking-demo-progress{display:flex;flex-wrap:wrap;gap:6px 10px;margin:10px 0;color:hsl(var(--studio-muted));font-size:10px}.parking-demo-progress>span{display:inline-flex;align-items:center;gap:4px}.parking-demo-progress .done{color:var(--studio-success)}.parking-demo-progress .current{color:var(--accent)}.parking-demo .parking-demo-start{border-color:var(--accent);background:hsl(var(--studio-accent));color:var(--accent)}.parking-demo-speed{display:inline-flex;align-items:center;gap:6px;color:hsl(var(--studio-muted));font-size:11px}.parking-demo-speed select,.parking-qr-auto button{border:1px solid var(--border);border-radius:7px;padding:5px 8px;min-height:30px;background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground));font:11px var(--font-studio);cursor:pointer}.parking-qr-auto{margin:-5px 0 18px;color:var(--accent);font-size:11px;line-height:1.7}.parking-qr-auto button{display:inline-flex;align-items:center;gap:6px}.parking-world-hud{position:absolute;left:18px;bottom:48px;z-index:6;width:min(420px,calc(100% - 36px));padding:12px;border:1px solid hsl(var(--studio-border));border-radius:10px;background:hsl(var(--studio-card) / .94);color:hsl(var(--studio-foreground));box-shadow:var(--studio-shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:11px}.parking-world-hud summary{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none;font-size:12px}.parking-world-hud summary>span{margin-left:auto;color:var(--accent);font-size:10px}.parking-world-hud p,.parking-flow-help{color:hsl(var(--studio-muted));font-size:11px;line-height:1.7;margin:9px 0}.parking-world-hud .parking-walk-target,.parking-world-hud .parking-saved-location{color:var(--accent)}.parking-world-hud .parking-away-clock{font-family:var(--font-code);color:var(--studio-success)}.parking-signal-controls>span{display:inline-flex;gap:6px;align-items:center;padding:6px;color:hsl(var(--studio-muted))}.parking-floor-tabs button:disabled{cursor:default;opacity:.65}.parking-qr-candidate{display:flex;align-items:center;gap:5px;margin:8px 0;padding:7px;background:hsl(var(--studio-secondary));border:1px solid var(--border);border-radius:5px;font-size:10px}.parking-qr-candidate>strong{font-weight:500}.parking-qr-candidate>span{color:hsl(var(--studio-muted));margin-left:auto}.parking-qr-candidate>b{font-size:9px;font-weight:500}.parking-qr-candidate.selected{color:var(--studio-success);border-color:var(--studio-success)}.wn-preview[data-camera]{aspect-ratio:16 / 9;height:auto}.wn-preview[data-camera=roof]{aspect-ratio:2}.wn-preview[data-camera]>canvas{position:absolute;inset:0;width:100%;height:100%}.parking-panel button,.parking-panel select,.parking-environment-controls button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;padding:5px 10px;border:1px solid var(--border);border-radius:7px;background:hsl(var(--studio-secondary));color:inherit;font:inherit;cursor:pointer}.parking-panel button:hover,.parking-environment-controls button:hover{border-color:var(--accent)}.parking-panel button:disabled{opacity:.45;cursor:default}.parking-panel-toolbar,.parking-panel-toolbar>span,.parking-panel-toolbar>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.parking-panel-toolbar{justify-content:space-between;gap:12px}.parking-panel-toolbar strong{font-weight:600}.parking-panel-toolbar em{font-size:10px;font-style:normal;color:var(--parking-muted);border-left:1px solid var(--border);padding-left:8px}.parking-stages{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 10px}.parking-stages>span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;color:var(--parking-muted);border:1px solid transparent;border-radius:6px}.parking-stages>.current{color:var(--accent);background:hsl(var(--studio-accent));border-color:var(--accent)}.parking-stages>.done{color:var(--studio-success)}.parking-timeline{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--parking-muted);font-size:11px}.parking-timeline b{margin-left:6px;color:hsl(var(--studio-foreground));font-family:var(--font-code);font-weight:500}.parking-panel progress{width:100%;height:4px;margin:8px 0 12px;appearance:none;border:0;border-radius:4px;background:hsl(var(--studio-secondary))}.parking-panel progress::-webkit-progress-bar{background:hsl(var(--studio-secondary));border-radius:4px}.parking-panel progress::-webkit-progress-value{background:var(--accent);border-radius:4px}.parking-checkpoints{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.parking-checkpoints>span{color:var(--parking-muted);margin-right:3px;font-size:11px}.parking-checkpoints button{min-height:27px;font-size:11px}.parking-panel-content{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(300px,1.4fr);gap:16px;margin-top:16px}.parking-panel-preview{min-width:0;border:1px solid var(--border);border-radius:9px;overflow:hidden}.parking-panel-preview .wn-preview{height:150px}.parking-environment-controls{padding:10px;font-size:12px}.parking-floor-tabs,.parking-signal-controls{display:flex;gap:6px;margin-bottom:8px}.parking-floor-tabs button{flex:1;font-family:var(--font-code)}.parking-floor-tabs button[aria-pressed=true]{color:var(--accent);border-color:var(--accent);background:hsl(var(--studio-accent))}.parking-environment-controls small{display:block;color:hsl(var(--studio-muted));font-size:10px}.parking-signal-controls button{flex:1;padding-inline:6px}.parking-section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.parking-section-title small{color:var(--parking-muted);font-size:10px}.parking-record-fields{display:grid;grid-template-columns:.65fr 1.5fr 1fr;gap:8px}.parking-record-fields>div{background:hsl(var(--studio-secondary));border:1px solid var(--border);border-radius:8px;padding:10px;min-width:0}.parking-record-fields span{display:block;color:hsl(var(--studio-muted));font-size:10px;margin-bottom:8px}.parking-record-fields strong{font-size:12px;font-weight:600;overflow-wrap:anywhere}.parking-record-fields .ready{color:var(--studio-success)}.parking-condition{display:flex;align-items:center;gap:6px;margin:9px 0;color:hsl(var(--studio-muted));font-size:11px;flex-wrap:wrap}.parking-condition strong{font-weight:500}.parking-condition>span{margin-left:auto;font-family:var(--font-code);font-size:10px}.parking-condition.passed{color:var(--studio-success)}.parking-feishu-message{display:flex;gap:9px;margin-top:12px;padding:11px;border:1px solid var(--border);border-radius:8px}.parking-feishu-message>svg{flex-shrink:0;margin-top:2px}.parking-feishu-message strong{font-weight:500;font-size:11px}.parking-feishu-message p{color:var(--parking-muted);font-size:11px;margin:6px 0 0;line-height:1.6;overflow-wrap:anywhere}.parking-feishu-message small{display:block;color:var(--parking-muted);font-size:10px;margin-top:6px}.parking-feishu-message.sent{border-color:color-mix(in srgb,var(--studio-success) 50%,var(--border))}.parking-feishu-message.sent>svg{color:var(--studio-success)}.parking-workspace .wf-demo-buttons,.parking-workspace .wf-checks,.parking-workspace .wf-speech{display:none}.wf-live-workspace.parking-workspace .wf-debug-panel{max-height:48%;overflow:auto}.wf-live-workspace.parking-workspace .wf-debug-collapsed{max-height:62px}.parking-workspace .wf-debug-collapsed .parking-panel{display:none}.parking-node-body{font-size:12px;padding:2px 0 6px}.parking-node-body .parking-record-fields{grid-template-columns:1fr}.parking-node-body .parking-record-fields>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px}.parking-node-body .parking-record-fields span{margin:0}.parking-agent-phase{display:block;font-size:18px;color:var(--accent);margin:9px 0;font-weight:600}.parking-task-status{color:hsl(var(--studio-muted));font-size:11px;line-height:1.7;overflow-wrap:anywhere;margin:9px 0}.parking-recognition-item{display:flex;align-items:center;gap:6px;border-top:1px solid var(--border);padding-top:8px;font-size:11px}.parking-recognition-item>span,.parking-recognition-item small{color:hsl(var(--studio-muted))}.parking-recognition-item>strong{font-weight:500;margin-left:auto}.parking-saved-at{display:block;color:hsl(var(--studio-muted));font-size:10px;line-height:1.8}.parking-notification-label{display:flex;gap:7px;align-items:center;color:var(--studio-success);margin:8px 0}.parking-qr{display:block;width:120px;max-width:100%;height:auto;margin:12px auto 4px;border-radius:5px;shape-rendering:crispEdges}.parking-qr-dialog{position:fixed;inset:0;border:1px solid var(--border);border-radius:16px;padding:30px;width:min(390px,calc(100vw - 36px));color:hsl(var(--studio-foreground));background:hsl(var(--studio-card));box-shadow:var(--studio-shadow);text-align:center;font:13px var(--font-studio)}.parking-qr-dialog::backdrop{background:#000000a6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.parking-qr-dialog h2{font-size:19px;font-weight:600;margin:18px 0 8px}.parking-qr-dialog>p{color:hsl(var(--studio-muted));margin:0 0 18px;font-family:var(--font-code)}.parking-qr-dialog .parking-qr{width:228px;margin:0 auto 12px}.parking-qr-dialog>small{display:block;color:hsl(var(--studio-muted));font-size:11px;margin-bottom:22px}.parking-qr-dialog>.primary-button{width:100%;min-height:38px;justify-content:center}.parking-qr-dialog .parking-qr-close{position:absolute;top:10px;right:10px;border:0;padding:5px;min-height:24px;background:transparent}.parking-return-tag{display:inline-flex;align-items:center;gap:6px;color:var(--studio-success);font-size:11px}@media(max-width:1000px){.parking-panel-content{grid-template-columns:1fr}.parking-panel-preview .wn-preview{display:none}.parking-panel-preview .parking-environment-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.parking-panel-preview .parking-environment-controls small{width:100%}.parking-panel-preview .parking-floor-tabs,.parking-panel-preview .parking-signal-controls{margin:0}.parking-stages{gap:2px}.parking-stages>span{padding:4px;font-size:10px}.parking-timeline{flex-wrap:wrap}}.studio.app:has(.parking-workspace),.studio.app:has(.parking-environment-controls){height:100dvh;overflow:hidden}.studio.app.has-harness-chat{--chat-width: 360px;height:100dvh;overflow:hidden}.has-harness-chat>.workflow-workspace,.has-harness-chat>.workspace{margin-right:var(--chat-width)}.studio.has-harness-chat>.workspace{grid-template-columns:minmax(0,1fr)}.has-harness-chat>.workspace>.right-panel{display:none}.studio.has-harness-chat>.workspace>.left-panel{display:none}.studio.has-harness-chat .environment-trigger{display:inline-flex}.studio.has-harness-chat.environment-open>.workspace>.left-panel{display:flex;position:fixed;inset:64px auto 24px 56px;width:250px;z-index:45}.harness-dock{position:absolute;top:64px;right:0;bottom:24px;width:var(--chat-width, 360px);z-index:35;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;border-left:1px solid hsl(var(--studio-divider));background:hsl(var(--studio-card));color:hsl(var(--studio-foreground));font:12px var(--font-studio)}.harness-dock[hidden]{display:none}.co-chat-header{height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 18px;border-bottom:1px solid hsl(var(--studio-divider))}.co-chat-header h3{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600}.co-chat-header h3>svg{color:var(--accent)}.co-chat-header>div{display:flex;gap:6px}.co-chat-header button{display:grid;place-items:center;width:26px;height:28px;border-radius:5px;color:hsl(var(--studio-muted))}.harness-dock-tabs{display:flex;gap:5px;padding:8px 14px;flex-shrink:0;border-bottom:1px solid hsl(var(--studio-divider))}.harness-dock-tabs button{flex:1;display:flex;justify-content:center;align-items:center;gap:6px;padding:7px 4px;border-radius:7px;color:hsl(var(--studio-muted));font-size:11px}.harness-dock-tabs button[aria-selected=true]{color:var(--accent);background:hsl(var(--studio-accent))}.harness-conversations{flex-shrink:0;padding:6px 12px;border-bottom:1px solid hsl(var(--studio-divider))}.harness-conversation-toggle,.harness-conversation-choice{display:flex;align-items:center;min-width:0;gap:9px;padding:6px 8px;text-align:left;border-radius:6px}.harness-conversation-toggle{width:100%}.harness-conversation-toggle>svg,.harness-conversation-choice>svg{flex-shrink:0;color:var(--accent)}.harness-conversation-toggle>span:first-of-type,.harness-conversation-choice>span{flex:1;min-width:0}.harness-conversations strong,.harness-conversations small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.harness-conversations small,.harness-conversation-count{color:hsl(var(--studio-muted));font-size:10px;margin-top:2px}.harness-conversation-list{display:grid;gap:3px;max-height:min(200px,24vh);margin:5px 0 0;padding:0;overflow:auto;list-style:none;scrollbar-width:thin}.harness-conversation-list li{display:flex;align-items:center;min-width:0;border-radius:6px}.harness-conversation-choice{flex:1}.harness-conversation-toggle:hover,.harness-conversation-list li:hover,.harness-conversation-list li.is-active{background:hsl(var(--studio-accent))}.harness-conversation-list li.is-active strong{color:var(--accent)}.harness-conversation-delete{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;margin-right:4px;border-radius:5px;color:hsl(var(--studio-muted))}.harness-conversation-delete:hover{color:hsl(var(--studio-foreground));background:hsl(var(--studio-secondary))}.co-chat-history{flex:1;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:20px 18px 12px;overscroll-behavior:contain;scrollbar-width:thin}.co-chat-history>article+article{margin-top:24px}.co-chat-welcome{min-height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding-bottom:45px;text-align:center}.co-chat-welcome-title{display:flex;flex-direction:column;align-items:center;gap:15px}.co-chat-welcome-title>svg{color:var(--accent)}.co-chat-welcome h2{margin:0;font-size:15px;font-weight:500}.co-chat-welcome>p{color:hsl(var(--studio-muted));line-height:1.85;font-size:11px}.co-chat-suggestions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.co-chat-suggestions button{padding:7px 12px;border:1px solid hsl(var(--studio-border));border-radius:18px;background:hsl(var(--studio-secondary));color:hsl(var(--studio-muted));font-size:11px}.co-chat-suggestions button:hover{color:var(--accent);border-color:var(--accent)}.harness-local-example{color:hsl(var(--studio-muted));font-size:10px;text-decoration:underline;text-underline-offset:4px}.co-chat-message{min-width:0}.co-chat-message.is-user{display:flex;justify-content:flex-end}.co-chat-bubble{min-width:0;overflow-wrap:anywhere;line-height:1.8}.co-chat-user{max-width:90%;padding:11px 13px;white-space:pre-wrap;border-radius:14px 14px 4px;background:hsl(var(--studio-secondary))}.co-chat-assistant p{margin:8px 0}.co-chat-assistant :is(ul,ol){padding-left:19px}.co-chat-assistant code{font-family:var(--font-code);font-size:11px}.co-chat-assistant pre{overflow:auto;background:hsl(var(--studio-secondary));padding:10px;border-radius:8px}.co-chat-composer{flex-shrink:0;min-width:0;padding:12px 16px 16px}.co-chat-input-bar{display:flex;flex-direction:column;gap:12px;padding:12px;border:1px solid hsl(var(--studio-border));border-radius:20px;background:hsl(var(--studio-background))}.co-chat-input-bar:focus-within{border-color:var(--accent)}.co-chat-input-bar textarea{width:100%;min-height:48px;max-height:150px;padding:0;border:0;resize:vertical;background:transparent;color:inherit;font:12px/1.8 var(--font-studio)}.co-chat-input-bar textarea:focus{outline:none}.co-chat-input-bar textarea::placeholder{color:hsl(var(--studio-muted))}.co-chat-composer-tools{display:flex;align-items:center;gap:8px;min-width:0}.co-chat-composer-tools>button{display:grid;place-items:center;flex-shrink:0;width:28px;height:30px;border-radius:7px;color:hsl(var(--studio-muted))}.co-chat-composer-tools>span{display:flex;align-items:center;gap:6px;flex:1;min-width:0;font-size:10px;color:hsl(var(--studio-muted));overflow-wrap:anywhere}.co-chat-composer-tools .co-chat-send{flex:0 0 32px;height:32px;width:32px;border-radius:50%;color:hsl(var(--studio-background));background:hsl(var(--studio-primary))}.co-chat-composer>small{display:block;margin-top:9px;text-align:center;color:hsl(var(--studio-muted));font-size:9px}.co-chat-activity-details{margin:0 0 12px;border-bottom:1px solid hsl(var(--studio-divider))}.co-chat-activity-details>summary{display:flex;align-items:center;gap:6px;min-height:34px;cursor:pointer;list-style:none;color:hsl(var(--studio-muted));font-size:11px}.co-chat-operations{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:4px 0 12px}.co-chat-operations>li{display:flex;align-items:flex-start;gap:7px;color:hsl(var(--studio-muted));font-size:11px}.co-chat-operations>li>svg{flex-shrink:0;margin-top:2px;color:var(--studio-success)}.co-chat-operations details{min-width:0;flex:1}.co-chat-operations summary{cursor:pointer}.co-chat-operations p{margin:8px 0;line-height:1.7}.co-chat-operations pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:250px;overflow:auto;font:10px/1.6 var(--font-code)}.harness-thinking{display:flex;align-items:center;gap:7px;margin-top:12px;color:hsl(var(--studio-muted));font-size:11px}.harness-spinner{animation:harness-spin 1s linear infinite}@keyframes harness-spin{to{transform:rotate(360deg)}}.harness-applied{margin-top:14px;padding:12px;border:1px solid hsl(var(--studio-border));border-radius:9px;background:hsl(var(--studio-secondary))}.harness-applied>strong{display:flex;align-items:center;gap:6px;color:var(--studio-success)}.harness-applied>span,.harness-applied>p{display:block;margin:7px 0;color:hsl(var(--studio-muted));font-size:11px;line-height:1.7}.harness-applied button,.harness-resources>button{border:1px solid hsl(var(--studio-border));border-radius:6px;padding:6px 9px;margin:5px 5px 0 0;font-size:11px}.harness-applied button:first-of-type{background:hsl(var(--studio-primary));color:hsl(var(--studio-background))}.harness-chat-error{margin:12px 0;padding:10px;border-radius:7px;background:#d65d5d14;color:#df9090;line-height:1.8}.harness-usage{display:block;margin-top:10px;color:hsl(var(--studio-muted));font:9px var(--font-code)}.harness-manual,.harness-resources{flex:1;overflow:auto;padding:16px 18px;line-height:1.8}.harness-manual>input{width:100%;padding:9px 10px;margin-bottom:12px;border:1px solid hsl(var(--studio-border));border-radius:7px;background:hsl(var(--studio-background));color:inherit;font-size:11px}.harness-manual>details{padding:11px 0;border-bottom:1px solid hsl(var(--studio-divider))}.harness-manual summary{cursor:pointer;font-weight:500}.harness-manual summary>code{float:right;color:hsl(var(--studio-muted));font-size:10px}.harness-manual p{color:hsl(var(--studio-muted));margin:9px 0;font-size:11px}.harness-manual ol,.harness-node-manual ol{padding-left:19px;color:hsl(var(--studio-muted));font-size:11px}.harness-manual strong{display:block;margin-top:10px;font-size:11px}.harness-manual details>code,.harness-node-manual code{display:block;overflow-wrap:anywhere;font:10px/1.9 var(--font-code);color:var(--accent)}.harness-manual pre{overflow:auto;padding:9px;border-radius:7px;background:hsl(var(--studio-secondary));font:10px/1.7 var(--font-code)}.harness-resources h4{margin:14px 0 8px;font-weight:500}.harness-resources p{color:hsl(var(--studio-muted));font-size:11px}.harness-resources>div{padding:10px;margin:8px 0;border:1px solid hsl(var(--studio-border));border-radius:7px}.harness-resources strong{font-weight:500}.harness-resources code{display:block;color:var(--accent);font:10px/1.8 var(--font-code);overflow-wrap:anywhere}.harness-node-manual{margin-top:18px;border-top:1px solid var(--border);padding-top:13px;font-size:11px;line-height:1.8}.harness-node-manual summary{cursor:pointer;color:var(--accent)}.harness-node-manual p{margin:9px 0;color:hsl(var(--studio-muted))}.harness-node-live{font-size:11px;line-height:1.7}.harness-node-live>strong{display:block;margin:10px 0;font-size:13px;font-weight:500}.harness-node-live p{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin:9px 0;color:hsl(var(--studio-muted))}.harness-node-live p small{width:100%}.harness-node-live code{font:10px var(--font-code);color:var(--accent)}.harness-online{display:inline-flex;align-items:center;gap:5px;color:var(--studio-success);font-size:10px}.harness-person-facts{display:flex;flex-direction:column;gap:5px;margin:10px 0;padding:9px;background:hsl(var(--studio-secondary));border-radius:6px}.harness-care-card{padding:10px;margin:9px 0;border:1px solid var(--accent);border-radius:7px;background:hsl(var(--studio-accent));line-height:1.7}.harness-care-card strong{color:var(--accent);font-weight:500}.harness-care-card p{margin:5px 0}.harness-media{padding:10px;border:1px solid var(--border);border-radius:7px}.harness-media>strong{display:block;margin:8px 0;font-size:13px}.harness-media.is-playing{border-color:var(--studio-success)}.harness-media.is-playing>strong{color:var(--studio-success)}.harness-scene-panel{padding:14px 16px;font-size:11px;line-height:1.8}.harness-scene-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.harness-scene-title>.harness-online{margin-left:auto}.harness-goal{color:var(--accent);margin:8px 0}.harness-passed,.harness-node-live .harness-passed{color:var(--studio-success)}.harness-workspace .wf-demo-buttons,.harness-workspace .wf-checks,.harness-workspace .wf-speech{display:none}.harness-workspace .wf-debug-panel{max-height:45%;overflow:auto}.harness-workspace .wf-debug-collapsed{max-height:62px}.harness-workspace .wf-debug-collapsed .harness-scene-panel{display:none}.scenario-world-hud{max-height:58%;overflow:auto}.scenario-world-hud .harness-scene-title{display:none}.cabin-recording-passengers{list-style:none;padding:0;margin:6px 0}.cabin-recording-passengers [data-arguing=true]{color:hsl(var(--studio-danger));font-weight:600}.studio .cabin-recording-dialog{width:min(760px,calc(100vw - 36px));max-height:86vh;overflow:auto;color:hsl(var(--studio-foreground));font-size:13px;line-height:1.65}.cabin-recording-dialog label{display:flex;align-items:center;gap:10px;margin-top:12px}.cabin-recording-detail{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:20px}.cabin-recording-detail figure{margin:0}.cabin-recording-detail canvas{width:100%;border-radius:8px;background:hsl(var(--studio-secondary))}.cabin-recording-detail figcaption{display:flex;align-items:center;justify-content:space-between}.cabin-recording-detail input[type=range]{width:100%}.cabin-recording-detail li p{margin:0 0 8px;color:inherit}@media(max-width:900px){.studio.app.has-harness-chat,.harness-dock{--chat-width: 310px}}@media(max-width:600px){.studio.app.has-harness-chat{--chat-width: calc(100vw - 56px) }.has-harness-chat>.workflow-workspace,.has-harness-chat>.workspace{margin-right:0}}@media(prefers-reduced-motion:reduce){.harness-spinner{animation:none}}.scenic-book .scene-interface-page svg{display:block;width:100%;border-radius:10px;margin-bottom:12px}.scenic-book-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;font-size:12px}.scenic-book-nav button{display:grid;place-items:center;min-width:30px;min-height:30px;color:inherit;background:transparent;border:1px solid currentColor;border-radius:6px;cursor:pointer}.scenic-book-nav button:disabled{opacity:.35;cursor:default}.scene-interface-dock{position:fixed;z-index:40;inset:auto 24px 40px auto;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-end;gap:12px;max-width:calc(100vw - 48px);max-height:calc(100vh - 80px);overflow:auto}.scene-interface{width:min(340px,calc(100vw - 50px));border:1px solid #64716e;border-radius:12px;background:#1f2828;color:#f0f6f4;box-shadow:0 12px 36px #0008;overflow:hidden}.scene-interface-phone{width:min(280px,calc(100vw - 50px));min-height:min(360px,55vh);border:6px solid #101616;border-radius:26px;background:#15201e}.scene-interface-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid #ffffff22;color:#b2c4be;font-size:12px}.scene-interface-header span{display:flex;align-items:center;gap:6px}.scene-interface-header button{display:inline-grid;place-items:center;padding:5px}.scene-interface-page{padding:16px;overflow-wrap:anywhere}.scene-interface-page h2{margin:0;font-size:17px}.scene-interface-page p{margin:10px 0 16px;white-space:pre-wrap;line-height:1.55}.scene-interface-buttons{display:flex;flex-wrap:wrap;gap:8px}.scene-interface-buttons button{padding:7px 12px;border:1px solid #7ca99b;border-radius:6px;background:#29453d;color:#eefbf5}.harness-page-back{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-bottom:1px solid hsl(var(--studio-divider));font-size:12px;color:hsl(var(--studio-muted))}.harness-page-back button{color:hsl(var(--studio-primary))}.co-chat-header .oak-action-menu>summary{width:28px;height:28px}@media(max-width:900px){.studio.app.has-harness-chat>.workflow-workspace,.studio.app.has-harness-chat>.workspace{margin-right:0}.studio.app .harness-dock{position:fixed;inset:64px 0 24px 56px;width:auto;max-width:none;z-index:45;border-left:0}}.model-library{display:grid;gap:12px;color:hsl(var(--studio-foreground));font-size:12px;min-width:0}.ml-intro,.ml-note{margin:0;color:hsl(var(--studio-foreground)/.65);font-size:12px;line-height:1.7}.ml-note{font-size:11px}.ml-toolbar,.ml-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ml-categories{display:flex;gap:4px;padding:3px;background:hsl(var(--studio-card));border:1px solid hsl(var(--studio-border));border-radius:8px}.model-library button,.model-library select,.model-library textarea{font:inherit;color:inherit;border:1px solid hsl(var(--studio-border));border-radius:6px;background:hsl(var(--studio-secondary));padding:6px 9px;min-height:31px;cursor:pointer}.model-library button{display:inline-flex;align-items:center;justify-content:center;gap:5px}.ml-categories button{min-height:27px;padding:3px 12px;border:0;background:none;font-size:11px}.ml-categories button[aria-pressed=true]{background:hsl(var(--studio-primary)/.17);color:hsl(var(--studio-primary))}.model-library button:disabled{cursor:default;opacity:.45}.model-library .ml-primary{background:hsl(var(--studio-primary)/.17);color:hsl(var(--studio-primary));border-color:hsl(var(--studio-primary)/.4)}.ml-local-only{display:flex;align-items:center;gap:5px;font-size:11px;margin-left:auto;white-space:nowrap}.ml-local-only input{width:13px;height:13px;min-height:0;accent-color:hsl(var(--studio-primary))}.ml-search{display:flex;align-items:center;gap:7px;flex:1;min-width:120px;padding:0 9px;border:1px solid hsl(var(--studio-border));background:hsl(var(--studio-card));border-radius:7px}.ml-search input{min-width:0;width:100%;border:0!important;background:none!important;color:inherit;font:inherit;padding:7px 0!important;outline:none}.ml-search>svg{opacity:.6;flex-shrink:0}.ml-controls select{font-size:11px}.ml-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:10px;min-width:0}.ml-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:13px;border:1px solid hsl(var(--studio-border));border-radius:9px;background:hsl(var(--studio-card))}.ml-card-title{display:flex;align-items:center;gap:8px;min-width:0}.ml-icon{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:7px;background:hsl(var(--studio-primary)/.1);color:hsl(var(--studio-primary))}.ml-card-title>div{min-width:0;flex:1}.ml-card h4{font-size:12px;line-height:1.5;font-weight:600;margin:0;overflow-wrap:anywhere}.ml-card-title>div>span{font-size:10px;opacity:.6}.ml-state{border:1px solid hsl(var(--studio-border));border-radius:5px;font-size:10px;padding:2px 5px;white-space:nowrap;align-self:start;opacity:.8}.ml-state.ready{color:var(--studio-success);border-color:color-mix(in srgb,var(--studio-success) 35%,transparent)}.ml-description{margin:0;font-size:11px;line-height:1.8;opacity:.75}.ml-specs{display:flex;gap:5px;flex-wrap:wrap}.ml-specs span{font-size:10px;padding:2px 5px;border-radius:4px;background:hsl(var(--studio-secondary));opacity:.75}.ml-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:auto}.ml-actions button{font-size:11px}.ml-progress{display:grid;gap:4px}.ml-progress progress{width:100%;height:5px;accent-color:hsl(var(--studio-primary))}.ml-progress>span{font-size:10px;opacity:.7}.ml-error{margin:0;color:#e99c9c;line-height:1.7;font-size:11px;overflow-wrap:anywhere}.ml-compatibility{font-size:11px;opacity:.55;margin:0}.ml-other-device{background:hsl(var(--studio-card)/.5)}.ml-details{border-top:1px solid hsl(var(--studio-border));padding-top:8px}.ml-details summary,.ml-test summary{cursor:pointer;font-size:10px;opacity:.65}.ml-details>p{font-size:10px;opacity:.7;margin:8px 0}.ml-details>div{display:grid;gap:4px;font-size:10px;margin:7px 0;overflow-wrap:anywhere}.ml-details code{font-size:9px;opacity:.6;-webkit-user-select:all;user-select:all}.ml-details>a,.ml-details>button{font-size:10px;color:hsl(var(--studio-primary));display:inline-flex;align-items:center;gap:4px}.ml-details>button{border:0;background:none;padding:0;min-height:22px}.ml-test form{display:grid;gap:7px;margin-top:9px}.ml-test textarea{resize:vertical;min-height:70px;width:100%;font-size:11px;cursor:text}.ml-test form>button{justify-self:start;font-size:11px}.ml-test-answer{white-space:pre-wrap;font-size:12px;line-height:1.8;padding:9px;background:hsl(var(--studio-secondary));border-radius:6px;margin:9px 0 0}.ml-empty{margin:0;opacity:.7;padding:15px;font-size:12px}.ml-controls-focused{position:relative;z-index:2}.ml-card{overflow:visible}.ml-actions .oak-action-menu{margin-left:auto}.ml-controls-focused .oak-menu-panel input[type=checkbox]{width:14px;min-height:0;margin:0}.ml-cloud-settings{display:grid;gap:10px;margin-top:10px;line-height:1.7}.ml-cloud-settings p{margin:0}.ml-cloud-settings label{display:grid;gap:5px}.ml-cloud-settings input{width:100%;box-sizing:border-box;border:1px solid hsl(var(--studio-border));border-radius:6px;padding:8px;color:inherit;background:hsl(var(--studio-secondary));font:inherit}.ml-cloud-settings small{opacity:.65}.ml-cloud-settings a{color:hsl(var(--studio-primary));font-size:11px}.device-workbench{width:min(860px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 36px);border:1px solid hsl(var(--studio-border));border-radius:16px;padding:0;background:hsl(var(--studio-background));color:hsl(var(--studio-foreground));box-shadow:0 24px 100px #0008}.device-workbench::backdrop{background:#0b091180}.device-workbench-title{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid hsl(var(--studio-border))}.device-title-icon{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:11px;background:#a78bfa26;color:#a78bfa}.device-workbench h2,.device-workbench h3,.device-workbench p{margin:0}.device-workbench h2{font-size:18px}.device-workbench h3{font-size:14px}.device-workbench-title p,.device-workbench small,.device-empty{opacity:.72;font-size:12px}.device-icon-button{margin-left:auto}.device-workbench-content{display:grid;gap:14px;padding:16px 22px 22px}.device-local-card,.device-composer,.device-results section{display:grid;gap:10px;align-content:start;border:1px solid hsl(var(--studio-border));border-radius:12px;padding:13px}.device-section-title{display:flex;align-items:center;gap:7px}.device-section-title>svg{color:#a78bfa}.device-section-title>span{margin-left:auto;font-size:12px}.device-online{color:var(--studio-success);font-size:12px}.device-peer{display:grid;gap:5px;padding-block:7px;border-top:1px solid hsl(var(--studio-border))}.device-local-actions,.device-pair-tools,.device-pair-tools form,.device-pair-code{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.device-pair-code code{-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.device-workbench button,.device-workbench input,.device-workbench select{border:1px solid hsl(var(--studio-border));border-radius:7px;background:hsl(var(--studio-secondary));color:inherit;font:inherit;font-size:12px;min-height:34px;padding:6px 9px}.device-workbench button{cursor:pointer;display:inline-flex;gap:5px;align-items:center;justify-content:center}.device-workbench button:disabled{opacity:.42;cursor:default}.device-workbench .device-primary{background:#7251bc;color:#fff;border-color:#9e82e2}.device-workbench .device-text-button{justify-self:start}.device-chain{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:9px}.device-chain label{display:grid;gap:8px;min-width:0;padding:9px;border-radius:9px;border:1px solid #a78bfa52;background:#a78bfa10}.device-chain label span{display:flex;align-items:center;gap:7px;font-size:12px}.device-chain select{width:100%}.device-wire{color:#a78bfa}.device-plan-controls{display:flex;flex-wrap:wrap;align-items:end;gap:8px}.device-plan-controls label{display:grid;gap:5px;font-size:12px}.device-plan-controls label:not(:first-child) input{width:90px}.device-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.device-results ul{display:grid;gap:5px;margin:0;padding:0;list-style:none;max-height:220px;overflow:auto}.device-results li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;border-top:1px solid hsl(var(--studio-border))}.device-results li strong,.device-results li small{display:block;overflow-wrap:anywhere}.device-results li strong{font-size:13px}.device-error{color:#ed9a9a}.device-feedback{color:#a78bfa}.device-alert-dot{position:absolute;right:6px;top:6px;width:7px;height:7px;border-radius:50%;background:#a78bfa}@media(max-width:570px){.device-workbench-title,.device-workbench-content{padding-inline:12px}.device-chain,.device-results{grid-template-columns:minmax(0,1fr)}.device-wire{transform:rotate(90deg);justify-self:center}}.device-model-browser>summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:12px;padding:5px 0}.device-model-browser>summary>span{margin-left:auto;font-size:11px;opacity:.65}.device-model-browser[open]>.model-library{margin-top:12px}.device-workbench .model-library input[type=checkbox]{min-height:0;padding:0}.device-account{display:grid;gap:10px;padding:14px;border:1px solid hsl(var(--studio-border));border-radius:12px;background:hsl(var(--studio-background))}.device-account small{font-size:12px;opacity:.72}.device-account-form{display:flex;flex-wrap:wrap;gap:9px;align-items:end}.device-account-form>small{flex-basis:100%}.device-account-form label{display:grid;gap:6px;font-size:12px;flex:1 1 160px}.device-account input,.device-account button{min-height:36px;padding:7px 10px;border:1px solid hsl(var(--studio-border));border-radius:7px;background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground));font:inherit;font-size:12px}.device-account input{min-width:0;width:100%;box-sizing:border-box}.device-account button{cursor:pointer}.device-account button:disabled{opacity:.5;cursor:default}.device-account button[type=submit]{background:#7251bc;color:#fff}.authoring-settings{width:min(560px,calc(100vw - 30px));max-height:calc(100dvh - 30px);overflow:auto}.authoring-settings h2{display:flex;align-items:center;gap:9px}.authoring-settings-form{display:grid;gap:16px;padding:22px;font-size:13px}.authoring-settings-form label{display:grid;gap:7px;font-weight:600}.authoring-settings-form input,.authoring-settings-form select{padding:10px 12px;border:1px solid hsl(var(--studio-border));border-radius:8px;background:hsl(var(--studio-background));color:inherit}.authoring-settings-form p,.authoring-settings-form small{margin:0;line-height:1.65;color:hsl(var(--studio-muted))}.authoring-settings-form button,.device-workflow-controls button,.device-workflows-panel button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid hsl(var(--studio-border));background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground));border-radius:7px;padding:8px 11px;cursor:pointer;font:inherit}.studio .workflow-workspace.wf-live-workspace.device-workspace{grid-template-rows:auto minmax(0,1fr)}.studio .device-workspace .wf-toolbar{flex-wrap:wrap;min-height:110px;padding:12px 14px;position:relative;z-index:2}.device-workspace button[hidden],.device-workspace .wf-canvas-actions[hidden]{display:none}.device-workflow-summary{max-height:220px;overflow:auto;border-radius:0;border-left:0;border-right:0}.device-workflow-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex-basis:100%;font-size:12px}.device-workflow-controls>span{display:inline-flex;align-items:center;gap:6px;margin-right:auto;color:hsl(var(--studio-primary))}.device-workflow-controls p{flex-basis:100%;margin:0;padding:7px 10px;border-radius:6px;white-space:pre-wrap;background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground));line-height:1.6;max-height:100px;overflow:auto}.real-node-parameters textarea{min-height:90px;resize:vertical}.device-node-live{display:grid;gap:8px;padding:12px;border-radius:7px;background:hsl(var(--studio-secondary));font-size:11px}.device-node-live>span{display:flex;gap:6px;align-items:center;color:hsl(var(--studio-muted))}.device-node-live strong{font-weight:500;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.device-node-live p{margin:0;line-height:1.6;white-space:pre-wrap;max-height:100px;overflow:auto}.device-node-live small{font-size:10px;color:hsl(var(--studio-muted))}.device-node-live.state-succeeded{border-left:3px solid #4c967b}.device-node-live.state-running{border-left:3px solid #8875b4}.device-node-live.state-error{border-left:3px solid #cc625e}.device-workflows-panel{border:1px solid hsl(var(--studio-border));border-radius:12px;background:hsl(var(--studio-card));padding:18px;color:hsl(var(--studio-foreground));font-size:12px}.device-workflows-panel h3{display:flex;gap:8px;align-items:center;margin:0 0 14px;font-size:14px}.device-workflows-panel>p{color:hsl(var(--studio-muted));line-height:1.6}.device-workflows-panel article{display:grid;gap:9px;border-top:1px solid hsl(var(--studio-border));padding:12px 0}.device-workflows-panel article>span{color:hsl(var(--studio-muted))}.device-workflows-panel article>div{display:flex;flex-wrap:wrap;gap:8px}.device-workflows-panel button{background:hsl(var(--studio-primary) / .12);color:hsl(var(--studio-primary));border-color:hsl(var(--studio-primary) / .25)}.studio .real-node-parameters .wf-field{display:flex;flex-direction:column;align-items:stretch;gap:7px}.studio .real-node-parameters .wf-field>span{width:auto}.studio .real-node-parameters .wf-field :is(input,select,textarea){width:100%;min-width:0;max-width:100%}.studio .workflow-workspace .wf-toolbar-actions .wf-new-device-scene{display:inline-flex}@media(max-width:700px){.device-workflow-controls button{font-size:11px;padding:6px 8px}}.studio .device-workspace .wf-toolbar{min-height:72px;padding:12px 18px}.device-workflow-controls{flex-basis:auto;flex-wrap:nowrap;position:relative}.device-workflow-controls .device-main-action,.device-workflows-panel .device-main-action{background:hsl(var(--studio-primary));color:hsl(var(--studio-primary-foreground));border-color:hsl(var(--studio-primary))}.device-workflow-controls .device-stop-action,.device-workflows-panel .device-stop-action{background:transparent;color:hsl(var(--studio-foreground));border-color:hsl(var(--studio-border))}.device-published-state{white-space:nowrap;font-size:12px;color:hsl(var(--studio-muted))}.device-workflow-controls>p{position:absolute;top:calc(100% + 8px);right:0;z-index:45;width:min(380px,calc(100vw - 90px));margin:0;padding:12px 14px;border:1px solid hsl(var(--studio-border));box-shadow:var(--studio-shadow)}.device-workflows-panel article.device-task-row{display:flex;align-items:center;gap:14px;padding:18px 0}.device-task-row .device-task-info{display:grid;gap:6px;flex:1;min-width:0}.device-task-row .device-task-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:8px}.device-task-row .device-task-title{display:block;padding:0;border:0;background:transparent;color:inherit;font-size:13px;font-weight:600;text-align:left;line-height:1.6;overflow-wrap:anywhere}.device-task-title:hover{color:hsl(var(--studio-primary))}.device-task-info small{color:hsl(var(--studio-muted));font-size:11px}.task-state-active{color:var(--studio-success)}.task-state-warning{color:hsl(var(--studio-danger))}.device-latest-message{margin-bottom:0;padding:12px;border-radius:8px;background:hsl(var(--studio-secondary))}.waiting-tasks>summary{padding:12px 0;cursor:pointer;color:hsl(var(--studio-muted));font-size:11px}.device-task-picker{display:grid;gap:12px;margin:16px 0 12px}.device-task-picker label{display:grid;gap:8px;color:hsl(var(--studio-muted))}.device-task-picker select{width:100%;min-width:0;padding:12px;border:1px solid hsl(var(--studio-border));border-radius:8px;background:hsl(var(--studio-background));color:hsl(var(--studio-foreground));font:inherit}.device-task-picker-actions{display:flex;align-items:center;gap:8px}.device-task-picker-actions>button{min-height:42px;padding:9px 20px;border:1px solid hsl(var(--studio-border));border-radius:8px;cursor:pointer}.device-workflows-panel>small{color:hsl(var(--studio-muted));line-height:1.6}.camera-preview{display:grid;gap:8px;min-width:0;margin:0;padding:10px;border:1px solid hsl(var(--studio-border));border-radius:10px;background:hsl(var(--studio-background));color:hsl(var(--studio-foreground))}.camera-preview figcaption,.camera-preview figcaption>span{display:flex;align-items:center;gap:7px}.camera-preview figcaption{justify-content:space-between;font-size:12px}.camera-preview figcaption>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.camera-preview figcaption b{flex-shrink:0;color:hsl(var(--studio-muted));font:500 10px/1.6 sans-serif}.camera-preview figcaption b.live{color:#4c967b}.camera-preview-picture{display:grid;place-items:center;width:100%;min-height:130px;aspect-ratio:4 / 3;overflow:hidden;border-radius:7px;background:#10141a}.camera-preview-picture img{display:block;height:100%;width:100%;min-height:0;object-fit:contain}.camera-preview-picture p{max-width:90%;padding:16px;text-align:center;color:#b2bcc9;font-size:12px;line-height:1.6}.camera-preview small{color:hsl(var(--studio-muted));font-size:10px}.camera-preview.compact{padding:7px;gap:6px}.camera-preview.compact figcaption{font-size:10px}.camera-preview.compact .camera-preview-picture{min-height:100px;max-height:180px}.device-camera-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;margin-bottom:16px}.device-camera-grid .camera-preview-picture{max-height:360px}.camera-preview.is-empty .camera-preview-picture{aspect-ratio:auto;min-height:100px;max-height:140px}.camera-preview.compact.is-empty .camera-preview-picture{min-height:72px}.device-name-form{display:flex;flex-wrap:wrap;align-items:end;gap:10px;width:100%}.device-name-form label{display:grid;gap:8px;flex:1;min-width:150px;color:hsl(var(--studio-muted));font-size:12px}.device-name-form input{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid hsl(var(--studio-border));border-radius:8px;background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground));font:inherit}.device-name-form button{min-height:40px;padding:9px 14px;border:1px solid hsl(var(--studio-border));border-radius:8px;background:hsl(var(--studio-primary));color:hsl(var(--studio-primary-foreground));cursor:pointer}.device-name-form p{flex-basis:100%;margin:0;color:hsl(var(--studio-danger))}:root{font-family:DM Sans,Segoe UI,Microsoft YaHei UI,sans-serif;color:#253d37;background:#f5f7f5;font-synthesis:none;font-weight:400;font-size:13px;--accent: #087f68;--accent-light: #e7f3ed;--border: #e2e8e3;--muted: #8a9891;--mono: "JetBrains Mono", Consolas, monospace}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:0;background:none;color:inherit}button:disabled{opacity:.35;cursor:default}button,a,input,select{outline-offset:3px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #37a58c}button{transition:background .15s,color .15s,border-color .15s}button:hover:not(:disabled){filter:brightness(.97)}a{color:inherit;text-decoration:none}h1,h2,p{margin:0}svg{flex-shrink:0}select{cursor:pointer}input[type=range]{display:block;width:100%;height:4px;appearance:none;background:#dce6de;border-radius:4px;accent-color:var(--accent);cursor:pointer;margin:13px 0 10px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border:2px solid #fff;width:13px;height:13px;border-radius:50%;box-shadow:0 0 0 1px #b6cdc2}input[type=range]:focus-visible{outline-offset:5px}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{background:#c7d4cb;border-radius:5px}::-webkit-scrollbar-track{background:transparent}.app{height:100dvh;min-height:700px;display:flex;flex-direction:column;overflow:hidden}.app-header{height:65px;flex-shrink:0;display:flex;align-items:center;gap:20px;padding:0 24px;background:#fff;border-bottom:1px solid var(--border);z-index:2}.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:700;letter-spacing:-1.1px}.brand>span:last-child>span{font-weight:450;color:#65796f}.brand-mark{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--accent);color:#fff}.brand-mark svg{width:30px;height:30px}.header-divider{height:24px;width:1px;background:var(--border);margin:0 1px 0 4px}.workspace-name{font-weight:550;font-size:14px}.version-tag{font-family:var(--mono);font-size:9px;letter-spacing:1px;color:#8b9b91;border:1px solid var(--border);border-radius:4px;padding:4px 6px;margin-left:-10px}.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.primary-button,.secondary-button{display:inline-flex;justify-content:center;align-items:center;gap:7px;border-radius:6px;height:33px;padding:0 12px;font-size:12px;font-weight:500;white-space:nowrap}.primary-button{background:var(--accent);color:#fff;border:1px solid var(--accent)}.secondary-button{border:1px solid var(--border);background:#fff}.secondary-button:hover{background:#f3f7f3}.local-status{display:flex;align-items:center;gap:7px;font-size:11px;color:#7b8e82;margin-right:12px}.status-dot{display:inline-block;width:6px;height:6px;background:#3da77c;border-radius:50%;flex-shrink:0}.workspace{display:grid;grid-template-columns:222px minmax(380px,1fr) 300px;flex:1;min-height:0}.left-panel,.right-panel{min-height:0;display:flex;flex-direction:column;background:#fbfcfa}.left-panel{border-right:1px solid var(--border)}.right-panel{border-left:1px solid var(--border);background:#fff}.panel-heading{height:49px;min-height:49px;padding:0 17px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border)}.panel-heading>svg{color:#6d8275}.panel-heading h2{font-size:13px;font-weight:600}.small-tag{margin-left:auto;font:8px var(--mono);letter-spacing:.6px;color:#94a196}.ego-tag{font:9px var(--mono);color:var(--accent);background:var(--accent-light);padding:4px 6px;border-radius:4px;margin-left:auto}.left-scroll,.right-scroll{overflow-y:auto;overflow-x:hidden;min-height:0;flex:1}.left-scroll{padding:18px 16px 0}.scene-card{border:1px solid #cbded1;background:#f0f5ed;border-radius:7px;padding:11px 9px;display:flex;align-items:center;gap:9px;margin-bottom:24px}.scene-thumb{width:38px;height:38px;display:flex;align-items:center;justify-content:center;position:relative;border-radius:5px;background:#dce9da;color:#60846b}.scene-dot{position:absolute;width:5px;height:5px;border-radius:50%;background:#288168;right:7px;bottom:9px}.scene-card strong{display:block;font-size:12px;font-weight:600;margin-bottom:5px}.scene-card div>span:not(.scene-dot){font-size:10px;color:#879483}.scene-card>svg{margin-left:auto;color:var(--accent)}section{padding:0 0 21px;margin-bottom:22px;border-bottom:1px solid var(--border)}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;font-size:12px;font-weight:600}.section-title>span:first-child{display:flex;align-items:center;gap:7px}.section-title svg{color:#6e8275}.section-title .muted{font-size:10px;font-weight:400;color:var(--muted)}.weather-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:17px}.weather-button{border:1px solid #e1e7df;border-radius:6px;height:36px;font-size:11px;display:flex;align-items:center;justify-content:center;gap:9px;color:#7a8d7f;background:#fff}.weather-button.selected{background:#e9f3e9;color:var(--accent);border-color:#a8c9b4}.weather-button.selected svg{color:#368364}.range-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#748578}.range-label b{font:500 14px var(--mono);color:#3c5b49}.range-label small{font-family:DM Sans,sans-serif;font-size:10px;font-weight:400;color:#8c9a8e}.range-ticks{display:flex;justify-content:space-between;color:#a0aaa0;font:9px var(--mono)}.setting-row{display:flex;align-items:center;justify-content:space-between;margin:16px 0;font-size:11px}.setting-row>span{display:flex;align-items:center;gap:8px}.setting-row small{color:#a6b0a5;font:10px var(--mono);margin-left:2px}.legend-dot{display:inline-block;width:6px;height:6px;border-radius:2px;flex-shrink:0;background:#8eb9a4}.legend-dot.green{background:#4bbd9b}.legend-dot.blue{background:#8aa9c5}.legend-dot.orange{background:#d3aa78}.legend-dot.purple{background:#a49bbe}.switch{width:27px;height:16px;padding:2px;display:flex;align-items:center;background:#d2dcd2;border-radius:10px;flex-shrink:0}.switch>span{width:12px;height:12px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #0001;transition:transform .15s}.switch.on{background:#4d9876}.switch.on>span{transform:translate(11px)}.inline-note{font-size:10px;color:#99a698;line-height:1.6;margin-top:17px}.autopilot-card{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);padding:12px 10px;border-radius:6px}.autopilot-card>div{display:flex;align-items:center;gap:7px;font-size:12px}.autopilot-card.active{background:#f0f5ed;border-color:#c6d9c8;color:#3e775b}.control-note{font-size:10px;line-height:1.8;color:#92a08e;margin-top:11px;min-height:36px}.keyboard-guide{text-align:center;margin:17px 0 15px}.keyboard-guide>div{display:flex;gap:5px;justify-content:center}.keyboard-guide .key-top{margin-bottom:5px}.keyboard-guide kbd{width:30px;height:27px;display:inline-flex;align-items:center;justify-content:center}.keyboard-guide>span{display:block;font-size:10px;color:#8a9b8a;margin-top:10px}kbd{font:10px var(--mono);border:1px solid #d9e2d6;border-bottom-width:2px;border-radius:4px;background:#fff;color:#6b816b;padding:3px 5px;white-space:nowrap}.shortcut-row{display:flex;gap:8px;align-items:center;font-size:10px;color:#8c9c89;margin-top:9px}.shortcut-row kbd:nth-of-type(2){margin-left:auto}.reverse-hint{font-size:9px;margin-left:auto}.world-legend{display:flex;flex-wrap:wrap;gap:13px 12px;margin:0 0 22px;font-size:9px;color:#899e8a}.world-legend span{display:flex;align-items:center;gap:6px}.left-bottom{min-height:35px;display:flex;align-items:center;gap:7px;border-top:1px solid var(--border);padding:0 16px;font-size:10px;color:#8c9b8c}.left-bottom>span:last-child{margin-left:auto;font:9px var(--mono)}.center-panel{display:flex;flex-direction:column;min-width:0;min-height:0}.world-toolbar{min-height:49px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;background:#fff}.world-title{display:flex;align-items:center;gap:9px;font-size:11px;color:#829085}.world-title strong{font-size:12px;font-weight:600;color:#405846}.toolbar-divider{width:1px;height:15px;background:var(--border);margin:0 2px;display:inline-block}.playback-controls{display:flex;align-items:center;gap:8px}.play-button{display:flex;align-items:center;gap:6px;color:#3d8c67;background:#edf5ec;padding:6px 9px;border-radius:4px;font-size:10px}.play-button.paused{color:#a28444;background:#f7f1e2}.icon-button{display:flex;align-items:center;justify-content:center;width:25px;height:26px;color:#7e8e7e;border-radius:4px}.icon-button:hover{background:#edf2eb}.playback-controls select{appearance:none;border:0;background:transparent;font:11px var(--mono);color:#627c67;padding:4px;outline-offset:0;width:36px;text-align:center}.simulation-time{font:10px var(--mono);color:#91a18f;margin-left:4px;min-width:37px}.world-stage{position:relative;flex:1;min-height:330px;overflow:hidden;background:#15292c}.world-stage>canvas{width:100%;height:100%;position:absolute;inset:0;display:block;cursor:grab;outline-offset:-3px;touch-action:none}.world-stage>canvas:active{cursor:grabbing}.map-heading{position:absolute;top:22px;left:24px;pointer-events:none}.map-heading>div{display:flex;align-items:center;gap:6px;font:8px var(--mono);letter-spacing:1.6px;color:#88ada4}.map-heading .status-dot{width:4px;height:4px;background:#88d2b4}.map-heading h1{font-size:19px;letter-spacing:2px;font-weight:500;color:#dce8df;margin:8px 0}.map-heading p{font-size:9px;color:#809e94;letter-spacing:.3px}.map-heading p span{margin:0 6px}.map-compass{position:absolute;top:21px;right:22px;color:#8da89f;display:flex;align-items:center;flex-direction:column;gap:5px;pointer-events:none}.map-compass>span{font:9px var(--mono)}.map-badges{position:absolute;left:20px;bottom:49px;display:flex;align-items:center;gap:7px;pointer-events:none;flex-wrap:wrap;right:65px}.map-badges>span{display:flex;align-items:center;gap:6px;border:1px solid #809b8c33;background:#152b2ed9;color:#b8d0bf;font-size:9px;padding:6px 8px;border-radius:4px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ego-dot{height:6px;width:6px;border:1px solid #6ce0bc;border-radius:50%;background:#6ce0bc66}.map-badges>span.contact-badge{color:#e7b59b;border-color:#b46c4144;background:#3e302bda}.map-badges>span.pause-badge{color:#e4cf9d}.view-tools{position:absolute;right:17px;bottom:64px;background:#1a3135e6;border:1px solid #59796d66;border-radius:6px;padding:4px;display:flex;align-items:center;flex-direction:column;gap:3px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.view-tools button{width:29px;height:29px;display:flex;align-items:center;justify-content:center;color:#77988b;border-radius:3px}.view-tools button.active{background:#29534b;color:#a9e8d3}.view-tools>span{height:1px;width:20px;background:#688b7c3b;margin:3px 0}.map-bottom{position:absolute;bottom:14px;left:21px;right:17px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.map-bottom>span{font-size:9px;color:#77988b;letter-spacing:.2px;display:flex;align-items:center;gap:6px}.map-bottom>span>i{height:4px;width:4px;border:1px solid #638e7b;border-radius:50%}.zoom-tools{display:flex;align-items:center;gap:5px;border:1px solid #59796d66;background:#1a3135df;border-radius:4px;padding:3px;pointer-events:auto;color:#9ebdad}.zoom-tools>button{display:flex;align-items:center;justify-content:center;width:23px;height:21px;border-radius:3px}.zoom-tools>span{font:9px var(--mono);width:36px;text-align:center}.zoom-tools>button:hover{background:#29534b}.sensor-dock{height:241px;min-height:241px;background:#fff}.sensor-heading{height:41px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #edf0eb}.sensor-heading>span{display:flex;align-items:center;gap:8px}.sensor-heading svg{color:#668372}.sensor-heading strong{font-size:12px;font-weight:550}.sensor-heading em{font-size:9px;font-style:normal;background:#ecf4ec;color:#6d9a76;border-radius:3px;padding:3px 5px;margin-left:3px}.sensor-meta{font:9px var(--mono);color:#9aa699}.sensor-meta i{width:1px;height:9px;background:var(--border)}.camera-tabs{display:flex;height:30px;padding:0 18px;gap:14px;border-bottom:1px solid #edf0eb}.camera-tabs button{position:relative;color:#9aa698;font-size:10px;padding:0 3px;min-width:28px}.camera-tabs button.active{color:var(--accent);font-weight:600}.camera-tabs button.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#349e76}.sensor-content{display:grid;grid-template-columns:1fr 1.05fr;grid-template-rows:minmax(0,1fr);padding:11px 18px 12px;gap:16px;height:170px;min-width:0}.sensor-preview{position:relative;border-radius:5px;background:#11282d;overflow:hidden;min-width:0;min-height:0}.sensor-preview>canvas{display:block;position:absolute;inset:0;width:100%;height:100%}.sensor-watermark{position:absolute;top:8px;left:9px;display:flex;gap:5px;align-items:center;font-size:9px;color:#d6e8df;background:#12292dbb;border-radius:3px;padding:3px 4px}.sensor-watermark i{width:4px;height:4px;border-radius:50%;background:#81dfb7}.sensor-watermark b{font:7px var(--mono);color:#96b6a5;margin-left:5px}.frame-tag{position:absolute;bottom:7px;right:8px;font:8px var(--mono);color:#94b0a2;background:#12292d88;border-radius:2px;padding:2px 3px}.detection-panel{display:flex;flex-direction:column;min-width:0;min-height:0}.detection-header{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#99a695;padding:0 0 8px;border-bottom:1px solid #edf0eb}.detection-header b{font:9px var(--mono);color:#63886d;background:#eff5ed;padding:1px 4px;border-radius:3px;margin-left:3px}.detection-list{overflow-y:auto;flex:1;min-height:0}.detection-row{display:flex;justify-content:space-between;align-items:center;height:31px;font-size:10px;border-bottom:1px solid #f0f3ed;padding-right:2px}.detection-row>span{display:flex;align-items:center;gap:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detection-row small{font:8px var(--mono);color:#acb6a6;margin-left:2px}.detection-row>b{font:10px var(--mono);color:#5e806a;padding-left:5px;white-space:nowrap}.detection-row>b.near{color:#b38b48}.detection-row>b>small{font-size:8px;margin-left:4px;font-weight:400}.empty-detections{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;color:#b0bdac;font-size:10px}.right-scroll section{padding:17px;margin:0}.vehicle-name{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#8d9b8b}.mode-label{display:flex;align-items:center;gap:5px;font-size:9px;color:#719276}.mode-label .status-dot{width:4px;height:4px}.speed-row{display:flex;justify-content:space-between;align-items:center;margin:11px 0 15px}.speed-row>div:first-child{display:flex;align-items:baseline;gap:9px}.speed-row strong{font:500 47px DM Sans,sans-serif;letter-spacing:-2.5px;line-height:1.1;color:#2a4939;font-variant-numeric:tabular-nums;min-width:47px}.speed-row>div>span{font:9px var(--mono);color:#a6b19e}.gear-buttons{display:flex;gap:5px}.gear-buttons>button{font:11px var(--mono);width:27px;height:30px;border:1px solid #e6ebe1;border-radius:5px;color:#9dab93}.gear-buttons>button.selected{background:#e9f3e6;border-color:#d4e6cc;color:#397d4c}.battery-row{display:flex;align-items:center;gap:7px;color:#6e9975;font-size:10px}.battery-row>span{color:#9ba78f;font-size:9px}.battery-row>b{font:11px var(--mono);color:#6b8c68}.battery-row small{font-size:8px;margin-left:3px;color:#a2af97}.battery-track{height:4px;background:#e9eee3;flex:1;margin:0 5px;border-radius:4px;overflow:hidden}.battery-track>i{display:block;height:100%;background:#94b87c;border-radius:4px}.right-scroll .cabin-section{padding-bottom:16px}.cabin-section .section-title{margin-bottom:0}.cabin-visual{position:relative;height:184px;max-width:270px;margin:auto}.cabin-visual>canvas{width:100%;height:100%;display:block}.door-button{position:absolute;display:grid;grid-template-columns:auto 5px;align-items:center;column-gap:7px;text-align:left;font-size:8px;color:#a2b09a;padding:5px 6px;border:1px solid #e7ede2;border-radius:5px;background:#fff}.door-button>span{font-size:10px;color:#6b8566;grid-column:1}.door-button>i{height:4px;width:4px;border-radius:50%;background:#a6c493;grid-column:2;grid-row:1}.door-button.front_left{left:1px;top:37px}.door-button.front_right{right:1px;top:37px}.door-button.rear_left{left:1px;top:107px}.door-button.rear_right{right:1px;top:107px}.door-button.open{border-color:#e6d5ab;background:#fcf8ed;color:#b49a67}.door-button.open>span{color:#b28a44}.door-button.open>i{background:#d4ad65}.passenger-control{display:grid;grid-template-columns:.9fr 1.1fr;gap:6px}.passenger-control select{background:#f7f9f3;border:1px solid #e6ebdf;height:28px;padding:0 6px;color:#7d9271;border-radius:4px;font-size:10px;min-width:0}.devices-section .section-title{margin-bottom:12px}.climate-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.climate-row>div:first-child{display:flex;align-items:center;gap:6px;font-size:10px;color:#819175}.climate-row svg{color:#a0b08e}.number-stepper{display:flex;align-items:center;gap:12px}.number-stepper button{display:flex;align-items:center;justify-content:center;width:20px;height:21px;border:1px solid #e5ebdd;border-radius:4px;color:#9aab8a}.number-stepper>b{font:14px var(--mono);color:#789162}.number-stepper small{font-size:10px}.fan-row{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#96a486;margin-bottom:14px}.fan-levels{display:flex;gap:4px}.fan-levels button{border:1px solid #e6ecdd;color:#a1af90;border-radius:3px;font:9px var(--mono);height:20px;width:22px}.fan-levels button.active{background:#edf4e5;color:#789358;border-color:#cfdcba}.devices-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.device-button{height:31px;display:flex;align-items:center;gap:7px;padding:0 8px;background:#fafbf7;border:1px solid #e9ede2;border-radius:4px;color:#9baa8d;font-size:10px}.device-button>i{width:4px;height:4px;background:#ccd5c0;border-radius:50%;margin-left:auto}.device-button.active{background:#eff5e9;color:#74935d;border-color:#d9e5ca}.device-button.active>i{background:#9aba6c}.window-row{display:flex;align-items:center;gap:6px;margin:13px 0;font-size:9px;color:#98a78b;white-space:nowrap}.window-row input{margin:0;width:68px;height:3px}.window-row>span{width:25px;font:8px var(--mono)}.seat-button{border:1px solid #e6ecdd;background:#fafbf7;border-radius:4px;height:22px;padding:0 6px;font-size:9px;margin-left:auto;color:#96a586}.seat-button.active{background:#f6f0df;color:#aa955b;border-color:#e9ddbb}.speech-form{display:flex;border:1px solid #e5ebdc;border-radius:5px;height:29px;background:#fafbf7;overflow:hidden}.speech-form>input{width:0;flex:1;border:0;background:none;padding:0 8px;font-size:9px;color:#8c9d7c;outline:none}.speech-form>button{width:31px;border-left:1px solid #e5ebdc;color:#8da775;display:flex;align-items:center;justify-content:center}.right-scroll .events-section{border-bottom:0;padding-top:15px}.events-section .section-title{margin-bottom:10px}.events-list{display:flex;flex-direction:column;gap:9px}.event{display:flex;gap:9px;font-size:9px;line-height:1.5;color:#96a58a}.event>time{font:8px var(--mono);color:#b1bda2;padding-top:2px;flex-shrink:0}.event>span{word-break:break-word}.event.contact>span{color:#b79060}.status-bar{height:27px;min-height:27px;display:flex;align-items:center;justify-content:space-between;background:#f7faf3;border-top:1px solid #e0e7d9;padding:0 16px;color:#91a181;font-size:9px;gap:10px}.status-bar>span{display:flex;gap:6px;align-items:center;white-space:nowrap}.status-bar>span:nth-child(2),.status-bar>span:nth-child(3){font-family:var(--mono);font-size:8px}.status-bar .status-dot{width:4px;height:4px}.status-separator{color:#c2cbb6;margin:0 4px}.api-dialog{border:1px solid #d5dfd1;border-radius:12px;padding:0;width:min(780px,90vw);max-height:85vh;box-shadow:0 20px 100px #142e3033;color:#425e42;background:#fff}.api-dialog::backdrop{background:#10292d77;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog-heading{height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 23px;border-bottom:1px solid var(--border)}.dialog-heading>div{display:flex;align-items:center;gap:10px}.dialog-heading h2{font-size:16px;font-weight:550}.dialog-heading>div>span{font:10px var(--mono);background:#edf5e8;color:#81a364;padding:5px 8px;border-radius:4px;margin-left:7px}.api-tabs{display:flex;gap:23px;padding:0 24px;border-bottom:1px solid var(--border);height:44px}.api-tabs button{font-size:12px;color:#94a77d;border-bottom:2px solid transparent}.api-tabs button.active{border-bottom-color:var(--accent);color:var(--accent)}.api-dialog pre{font:11px/1.95 var(--mono),"Microsoft YaHei",monospace;padding:22px 26px;margin:0;background:#f8faf5;max-height:55vh;overflow:auto;color:#607c4b;white-space:pre-wrap}.dialog-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 23px;font-size:10px;color:#97aa80;border-top:1px solid var(--border)}@media(min-width:1700px){.workspace{grid-template-columns:242px minmax(380px,1fr) 320px}.left-scroll,.panel-heading{padding-left:21px;padding-right:21px}.right-scroll section{padding-left:21px;padding-right:21px}.sensor-dock{height:260px;min-height:260px}.sensor-content{height:189px}.cabin-visual{height:198px}.door-button.front_left,.door-button.front_right{top:44px}.door-button.rear_left,.door-button.rear_right{top:119px}}@media(max-width:1180px){.workspace{grid-template-columns:190px minmax(340px,1fr) 270px}.left-scroll,.panel-heading{padding-left:12px;padding-right:12px}.scene-card{padding-left:7px;padding-right:7px;gap:6px}.scene-card strong{font-size:11px}.scene-thumb{width:31px;height:35px}.small-tag{font-size:7px}.right-scroll section{padding-left:12px;padding-right:12px}.sensor-heading{padding:0 12px}.sensor-content{padding-left:12px;padding-right:12px;gap:9px}.camera-tabs{padding:0 12px;gap:8px}.sensor-meta{font-size:8px}.local-status,.version-tag,.detection-row small{display:none}.world-toolbar{padding:0 12px}.world-title{gap:6px}.playback-controls{gap:4px}.world-title>span:last-child{display:none}.control-note{font-size:9px}.world-legend{gap:10px}.scene-card div>span:not(.scene-dot){font-size:9px}}@media(max-width:960px){.workspace{grid-template-columns:minmax(360px,1fr) 260px}.left-panel{display:none}.workspace-name{font-size:12px}.app-header{padding:0 15px;gap:13px}.app-header .brand{font-size:20px}.header-divider{margin:0}.status-bar>span:nth-child(2){display:none}.map-heading{left:18px}.sensor-content{grid-template-columns:1fr .9fr}.camera-tabs{gap:11px}}@media(max-width:650px){.app{height:auto;min-height:100dvh;overflow:visible}.app-header{height:58px;padding:0 12px}.brand{gap:6px}.brand-mark{height:29px;width:29px;border-radius:8px}.workspace-name,.header-divider{display:none}.header-actions{gap:5px}.header-actions button{font-size:10px;height:30px;padding:0 8px}.workspace{display:flex;flex-direction:column}.center-panel{height:690px;flex-shrink:0}.world-stage{min-height:370px}.right-panel{border-left:0;border-top:1px solid var(--border)}.right-scroll{display:grid;grid-template-columns:1fr 1fr;overflow:visible}.right-scroll section{min-width:0}.right-scroll .vehicle-telemetry{grid-column:1 / -1}.right-scroll .devices-section{border-left:1px solid var(--border)}.right-scroll .events-section{grid-column:1 / -1}.panel-heading{height:43px;min-height:43px}.sensor-content{grid-template-columns:1fr 1fr}.camera-tabs{gap:12px}.camera-tabs button{min-width:24px}.world-toolbar{min-height:45px}.speed-row{margin:8px 0}.speed-row strong{font-size:40px}.vehicle-name{font-size:12px}.battery-row{max-width:270px}.window-row{flex-wrap:wrap}.window-row input{width:45px}.cabin-visual{height:180px}.door-button{font-size:7px;column-gap:4px;padding:4px}.door-button>span{font-size:8px}.section-title .muted{font-size:8px}.passenger-control{display:flex;flex-direction:column}.status-bar{font-size:8px}.status-bar>span:nth-child(3){font-size:7px}.dialog-footer{gap:12px}.dialog-footer>span{font-size:8px}}.app .environment-trigger,.environment-backdrop{display:none}@media(max-width:960px){.app .environment-trigger{display:inline-flex}.app .environment-backdrop{display:block;position:fixed;inset:65px 0 27px;background:#122b3066;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:19}.app.environment-open .left-panel{display:flex;position:fixed;left:0;top:65px;bottom:27px;width:242px;z-index:20;box-shadow:6px 0 30px #122b3033}.app.environment-open .app-header{z-index:21}}@media(max-width:650px){.app .environment-backdrop,.app.environment-open .left-panel{top:58px}}.dimension-switch{display:flex;align-items:center;gap:2px;background:#eff3ee;border:1px solid #e1e8df;border-radius:5px;padding:2px}.dimension-switch button{display:flex;align-items:center;gap:4px;height:23px;padding:0 8px;border-radius:3px;font:10px var(--mono);color:#8a9b8c}.dimension-switch button.active{background:#fff;color:#087f68;box-shadow:0 1px 3px #254d3915}.camera-mode-tabs{position:absolute;top:22px;left:50%;transform:translate(-50%);display:flex;padding:4px;gap:2px;border:1px solid #d3dfd2;background:#f9fcf3e8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:7px;box-shadow:0 3px 14px #254e3520}.camera-mode-tabs button{display:flex;align-items:center;gap:5px;font-size:10px;padding:7px 9px;border-radius:4px;color:#738775;white-space:nowrap}.camera-mode-tabs button.active{background:#e1eee1;color:#087f68}.scene-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;color:#60816c;background:#c8d9d6;font-size:12px}.world-stage.is-3d{background:#c8d9d6}.is-3d .map-heading{padding:12px 14px;top:18px;left:18px;background:#f7fcf0dc;border:1px solid #d1dfce;border-radius:7px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 3px 18px #284c3010}.is-3d .map-heading>div{color:#74927b}.is-3d .map-heading h1{color:#33563f;font-size:17px;margin:7px 0}.is-3d .map-heading p{color:#819878}.is-3d .map-compass{color:#5b8269}.is-3d .map-badges>span{color:#51725c;background:#f7fcf1e6;border-color:#cadbc4}.is-3d .map-badges>span.contact-badge{color:#a26640;border-color:#dcc9a7;background:#fff4e5e6}.is-3d .map-badges>span.pause-badge{color:#987b3c}.is-3d .view-tools,.is-3d .zoom-tools{background:#f7fcf2e6;border-color:#c7d8bf;box-shadow:0 2px 12px #29452612}.is-3d .view-tools button,.is-3d .zoom-tools{color:#7c977c}.is-3d .view-tools button.active{color:#087f68;background:#deeddc}.is-3d .view-tools>span{background:#d2dfc9}.is-3d .map-bottom>span{padding:5px 7px;background:#f7fcf1d9;color:#72906d;border-radius:3px}@media(max-width:1180px){.camera-mode-tabs{top:128px;left:18px;transform:none}.dimension-switch button{padding:0 6px}}@media(max-width:650px){.world-title strong{display:none}.world-title{gap:5px}.world-title .toolbar-divider{display:none}.camera-mode-tabs button{font-size:9px;padding:6px 8px}.is-3d .map-heading{padding:9px 11px}.camera-mode-tabs{top:121px}}.sensor-options{display:flex;align-items:center;gap:12px}.sensor-options .sensor-meta{display:flex;align-items:center;gap:8px}.sensor-options .dimension-switch button{height:20px;padding:0 6px;font-size:9px}.sensor-renderer-3d,.sensor-renderer-3d>canvas{display:block;position:absolute;inset:0;width:100%;height:100%}.sensor-annotations{pointer-events:none}.sensor-preview-actions{position:absolute;right:6px;top:6px;display:flex;gap:4px;z-index:2}.sensor-preview-actions button{display:flex;align-items:center;justify-content:center;width:24px;height:23px;border:1px solid #c9e8d750;color:#d9f7e5;background:#183a3ed9;border-radius:4px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.sensor-preview-actions button:hover{background:#2d5b55}.sensor-preview-backdrop{position:fixed;inset:0;z-index:40;background:#10282dbb;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.sensor-preview.expanded{position:fixed;z-index:41;left:50%;top:50%;transform:translate(-50%,-50%);width:min(1100px,92vw);height:min(650px,80vh);border:1px solid #94b7a2;border-radius:10px;box-shadow:0 24px 90px #071d2870}.sensor-preview.expanded .sensor-watermark{font-size:12px;top:13px;left:13px;padding:5px 8px}.sensor-preview.expanded .sensor-watermark b{font-size:10px}.sensor-preview.expanded .sensor-preview-actions{top:12px;right:12px}.sensor-preview.expanded .sensor-preview-actions button{width:31px;height:30px}.sensor-preview.expanded .frame-tag{font-size:10px;padding:4px 6px;right:12px;bottom:12px}@media(max-width:650px){.sensor-options{gap:7px}.sensor-options .sensor-meta{font-size:8px;gap:5px}.sensor-heading em{font-size:8px;padding:3px}.sensor-heading>span{gap:5px}.sensor-watermark{font-size:8px;left:5px}.sensor-watermark b{font-size:6px;margin-left:2px}.sensor-preview.expanded{height:65vh;width:94vw}}:root{color-scheme:dark;--studio-background: 240 1.64% 11.96%;--studio-canvas: 240 2% 12%;--studio-dot: 215 12% 25%;--studio-foreground: 212.73 26.83% 83.92%;--studio-card: 240 2.13% 9.22%;--studio-popover: 240 3.9% 15.1%;--studio-secondary: 240 3.61% 16.27%;--studio-primary: 246 85% 78%;--studio-primary-foreground: 240 2.13% 9.22%;--studio-muted: 215.29 19.77% 66.27%;--studio-accent: 246 28% 23%;--studio-divider: 240 5.6% 24.51%;--studio-border: 240 5.6% 24.51%;--studio-input: 240 4.9% 28.04%;--studio-danger: 0 64.71% 80%;--studio-success: #80bf9b;--studio-trigger: #e3bb69;--studio-shadow: 0 14px 32px rgb(0 0 0 / .28);--studio-radius: 12px;--font-studio: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", Arial, sans-serif;--font-code: ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--accent: hsl(var(--studio-primary));--accent-light: hsl(var(--studio-accent));--border: hsl(var(--studio-divider));--muted: hsl(var(--studio-muted));--mono: var(--font-code)}:root[data-theme=light]{color-scheme:light;--studio-background: 0 0% 100%;--studio-canvas: 0 0% 100%;--studio-dot: 215 28% 87%;--studio-foreground: 215.29 16.83% 39.61%;--studio-card: 0 0% 100%;--studio-popover: 0 0% 100%;--studio-secondary: 220 16% 97%;--studio-primary: 246 64% 58%;--studio-primary-foreground: 0 0% 100%;--studio-muted: 215.29 14.41% 46.27%;--studio-accent: 246 75% 96%;--studio-divider: 220 15% 95.44%;--studio-border: 210 17.14% 86.27%;--studio-input: 210 17.14% 86.27%;--studio-danger: 0 45% 52.94%;--studio-success: #39805c;--studio-trigger: #b57b19;--studio-shadow: 0 14px 32px rgb(42 43 68 / .08)}[hidden]{display:none!important}:root{--icon-response: .22s;--icon-spring: linear(0, .22 8%, .57 20%, .84 35%, .98 52%, 1.02 67%, 1.01 82%, 1)}:where(.lucide,.hmi-chrome-icon,.react-flow__controls-button>svg){transform-origin:center;transition:transform var(--icon-response) var(--icon-spring),scale var(--icon-response) var(--icon-spring),opacity .14s linear}.app-icon{flex-shrink:0}@media(prefers-reduced-motion:no-preference){@media(hover:hover)and (pointer:fine){:where(button,a[href],[role=button],summary):not(:disabled):not([aria-disabled=true]):hover :where(.lucide,.hmi-chrome-icon,.react-flow__controls-button>svg):not(:where([disabled] *,[aria-disabled=true] *,[data-icon-motion=off] *)){scale:1.1}}:where(button,a[href],[role=button],summary):not(:disabled):not([aria-disabled=true]):focus-visible :where(.lucide,.hmi-chrome-icon,.react-flow__controls-button>svg):not(:where([disabled] *,[aria-disabled=true] *,[data-icon-motion=off] *)){scale:1.08}:where(button,a[href],[role=button],summary):not(:disabled):not([aria-disabled=true]):active :where(.lucide,.hmi-chrome-icon,.react-flow__controls-button>svg):not(:where([disabled] *,[aria-disabled=true] *,[data-icon-motion=off] *)){scale:.9;transition-duration:80ms}}@keyframes app-icon-spin{to{rotate:360deg}}.app-icon--spinning{animation:app-icon-spin 1s linear infinite}@media(prefers-reduced-motion:reduce){:where(.lucide,.hmi-chrome-icon,.react-flow__controls-button>svg){transition:none!important;animation:none!important;scale:none!important}}html,body,#root{height:100%;background:hsl(var(--studio-background));color:hsl(var(--studio-foreground));font-family:var(--font-studio)}.studio.app{position:relative;padding-left:56px;min-height:640px;font-family:var(--font-studio);background:hsl(var(--studio-background));color:hsl(var(--studio-foreground))}.studio button:hover:not(:disabled){filter:none}.studio :is(button,a,input,select,textarea):focus-visible{outline:2px solid hsl(var(--studio-primary));outline-offset:2px}.studio ::-webkit-scrollbar{width:6px;height:6px}.studio ::-webkit-scrollbar-thumb{background:hsl(var(--studio-muted) / .25);border-radius:6px}.studio-nav{position:absolute;inset:0 auto 0 0;z-index:50;display:flex;flex-direction:column;align-items:center;width:56px;padding:12px 0 8px;border-right:1px solid hsl(var(--studio-divider));background:hsl(var(--studio-card))}.studio-logo{display:grid;place-items:center;width:40px;height:40px;margin-bottom:16px;border-radius:8px}.studio-logo:hover{background:hsl(var(--studio-accent))}.studio-library-nav{display:flex;flex-direction:column;gap:4px}.studio-nav-button{display:grid;place-items:center;width:40px;height:40px;margin:2px 0;border-radius:8px;color:hsl(var(--studio-muted))}.studio-nav-button:hover{background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground))}.studio-nav-button.active{background:hsl(var(--studio-primary) / .1);color:hsl(var(--studio-primary))}.studio-nav-bottom{display:flex;flex-direction:column;margin-top:auto}.studio .app-header{position:relative;height:64px;min-height:64px;padding:0 24px;gap:12px;border-color:hsl(var(--studio-divider));background:hsl(var(--studio-card))}.studio-wordmark{display:flex;gap:7px;align-items:baseline;font-size:14px;letter-spacing:-.3px}.studio-wordmark strong{font-weight:600;color:hsl(var(--studio-foreground))}.studio-wordmark span{font-size:12px;color:hsl(var(--studio-muted))}.studio .workspace-tabs{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);align-self:auto;align-items:center;padding:4px;gap:4px;border-radius:14px;background:hsl(var(--studio-secondary))}.studio .workspace-tabs button{display:flex;gap:8px;height:36px;padding:0 14px;font-size:14px;border-radius:10px;font-weight:500;color:hsl(var(--studio-muted))}.studio .workspace-tabs button.active{background:hsl(var(--studio-primary));color:hsl(var(--studio-primary-foreground));box-shadow:0 1px 4px #0002}.studio .workspace-tabs button:after{display:none}.studio .header-actions{gap:12px}.studio .header-actions .local-status{display:flex;font-size:12px;color:hsl(var(--studio-muted));margin:0}.studio .status-dot{background:var(--studio-success)}.studio :is(.primary-button,.secondary-button){min-height:32px;border-radius:8px;font-size:13px;font-weight:500}.studio .primary-button{background:hsl(var(--studio-primary));border-color:hsl(var(--studio-primary));color:hsl(var(--studio-primary-foreground))}.studio .secondary-button{background:transparent;color:hsl(var(--studio-foreground));border-color:hsl(var(--studio-border))}.studio .secondary-button:hover{background:hsl(var(--studio-secondary))}.studio :is(.wf-icon-button,.icon-button){color:hsl(var(--studio-muted));border-radius:8px}.studio :is(.wf-icon-button,.icon-button):hover{background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground))}.studio .workflow-workspace.wf-live-workspace{position:relative;grid-template-columns:minmax(0,1fr);grid-template-rows:48px minmax(0,1fr);background:hsl(var(--studio-background))}.studio .workflow-workspace.wf-live-workspace.inspector-open{grid-template-columns:minmax(0,1fr) 380px}.studio .wf-toolbar{grid-column:1;grid-row:1;padding:0 10px;gap:10px;background:hsl(var(--studio-card));border-color:hsl(var(--studio-divider))}.studio .wf-scene-title{gap:0;min-width:120px}.studio .wf-scene-icon{display:none}.studio .wf-scene-title input{width:156px;padding:6px 10px;font-size:13px;font-weight:500;border-radius:8px;color:hsl(var(--studio-primary));background:hsl(var(--studio-primary) / .14)}.studio .wf-scene-title p{font-size:10px;margin-top:3px;padding-left:3px;color:hsl(var(--studio-muted))}.studio .wf-scene-title p i{color:hsl(var(--studio-muted) / .4)}.studio .wf-scene-title .wf-running{color:var(--studio-success)}.studio .wf-toolbar-actions{gap:4px;flex-shrink:0}.studio .wf-toolbar-actions :is(.primary-button,.secondary-button){height:30px;min-height:30px;padding:0 9px;gap:5px;font-size:12px}.studio .wf-toolbar-actions .wf-icon-button{width:28px;height:28px}.studio .wf-toolbar-divider{margin:0 2px;background:hsl(var(--studio-divider))}.studio .wf-toolbar-actions .wf-model-button{color:hsl(var(--studio-primary));border-color:hsl(var(--studio-primary) / .25);background:hsl(var(--studio-primary) / .06)}.studio .wf-toolbar-actions .wf-stop{background:hsl(var(--studio-primary) / .12);color:hsl(var(--studio-primary));border-color:hsl(var(--studio-primary) / .3)}.studio .wf-center{grid-column:1;grid-row:2;overflow:hidden}.studio .wf-canvas-heading{background:hsl(var(--studio-card));border-color:hsl(var(--studio-divider));padding:0 12px;color:hsl(var(--studio-muted));font-size:11px}.studio .wf-canvas-heading b,.studio .wf-world-clock{color:hsl(var(--studio-muted));font-size:10px}.studio .wf-text-button{color:hsl(var(--studio-muted));font-size:11px}.studio .wf-text-button:hover{color:hsl(var(--studio-primary))}.studio .wf-graph{background:radial-gradient(ellipse at center,hsl(var(--studio-secondary) / .3),transparent 70%),hsl(var(--studio-canvas))}.studio .wf-graph .react-flow__background{opacity:.24}.studio .wf-canvas-caption{color:hsl(var(--studio-muted));background:hsl(var(--studio-card) / .88);padding:5px 8px;border-radius:6px}.studio .wf-canvas-caption i{background:hsl(var(--studio-muted) / .5)}.studio .wf-canvas-caption i.active{background:var(--studio-success)}.studio .workflow-workspace.wf-live-workspace .wf-inspector{position:static;grid-column:2;grid-row:1 / -1;width:380px;display:none;background:hsl(var(--studio-card));color:hsl(var(--studio-foreground));border-color:hsl(var(--studio-divider));box-shadow:none}.studio .workflow-workspace.wf-live-workspace.inspector-open .wf-inspector{display:flex}.studio .wf-inspector-backdrop{display:none!important}.studio .wf-section-heading{min-height:48px;height:48px;padding:0 20px;font-size:16px;color:hsl(var(--studio-foreground));border-color:hsl(var(--studio-divider))}.studio .wf-section-heading>span>svg{color:hsl(var(--studio-primary))}.studio .wf-inspector-body{padding:24px 20px}.studio .wf-selected-heading>span{width:40px;height:40px;background:hsl(var(--studio-primary) / .12);border-radius:10px}.studio .wf-selected-heading strong{color:hsl(var(--studio-foreground));font-size:16px}.studio .wf-selected-heading code{font-size:12px;color:hsl(var(--studio-muted))}.studio .wf-node-description{color:hsl(var(--studio-muted));font-size:13px;line-height:1.7}.studio .wf-inspector-tabs{border-color:hsl(var(--studio-divider));gap:24px}.studio .wf-inspector-tabs button{font-size:13px;color:hsl(var(--studio-muted))}.studio .wf-inspector-tabs button.active{color:hsl(var(--studio-primary));border-color:hsl(var(--studio-primary))}.studio .wf-field{font-size:13px;color:hsl(var(--studio-muted));margin-bottom:18px}.studio :is(.wf-field input,.wf-field select,.wf-field textarea,.wf-live-passengers select){color:hsl(var(--studio-foreground));background:hsl(var(--studio-secondary) / .65);border-color:hsl(var(--studio-input));border-radius:8px;padding:8px 10px;font-size:13px;min-height:36px}.studio :is(.wf-number em,.wf-help,.wf-checkbox,.wf-live-passengers h4,.wf-live-passengers label){font-size:12px;color:hsl(var(--studio-muted));line-height:1.7}.studio :is(.wf-preview-heading,.wf-live-passengers,.wf-live-controls,.wf-edit-help){border-color:hsl(var(--studio-divider))}.studio .wf-preview-heading{margin-top:24px;color:hsl(var(--studio-muted));font-size:13px}.studio .wf-preview-heading button{color:hsl(var(--studio-muted));font-size:11px}.studio .wf-preview-heading button.active{background:hsl(var(--studio-accent));color:hsl(var(--studio-primary))}.studio .wf-preview{height:auto;aspect-ratio:16/9;border:1px solid hsl(var(--studio-border));border-radius:12px;background:hsl(var(--studio-secondary));overflow:hidden}.studio .wf-preview-expand{color:hsl(var(--studio-foreground));background:hsl(var(--studio-card) / .85);border-color:hsl(var(--studio-border));border-radius:7px}.studio .wf-live-state{color:hsl(var(--studio-muted));font-size:12px}.studio .wf-live-state span{background:hsl(var(--studio-secondary));border-color:hsl(var(--studio-border))}.studio :is(.wf-scene-properties strong,.wf-edge-properties strong){color:hsl(var(--studio-foreground));font-size:16px}.studio :is(.wf-scene-properties p,.wf-scene-properties span,.wf-node-data,.wf-execution-detail,.wf-edge-properties>span){color:hsl(var(--studio-muted));font-size:12px}.studio .wf-node-data pre{background:hsl(var(--studio-background));color:hsl(var(--studio-foreground));border:1px solid hsl(var(--studio-border));border-radius:8px;font:12px/1.7 var(--font-code)}.studio .danger{color:hsl(var(--studio-danger))}.studio .wf-palette.studio-library-panel{position:absolute;inset:-64px auto 0 0;z-index:30;display:flex;flex-direction:column;width:max(360px,33.333333vw);max-width:100%;border:0;border-right:1px solid hsl(var(--studio-divider));background:hsl(var(--studio-card));color:hsl(var(--studio-foreground));box-shadow:8px 0 24px #0002;overflow:hidden;animation:studio-panel-enter .18s cubic-bezier(.2,.8,.2,1)}.studio-library-heading{display:flex;align-items:center;justify-content:space-between;flex:0 0 64px;padding:0 20px;gap:16px;border-bottom:1px solid hsl(var(--studio-divider))}.studio-library-heading>span{display:flex;align-items:center;gap:12px}.studio-library-heading svg{color:hsl(var(--studio-primary))}.studio-library-heading strong{font-size:18px;font-weight:600}.studio .wf-library-content{padding:0 0 24px;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.studio .wf-palette-help{display:block;color:hsl(var(--studio-muted));padding:16px 20px 0;font-size:12px}.studio .wf-category{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:22px 16px 0}.studio .wf-category h3{grid-column:1/-1;color:hsl(var(--studio-muted));font-size:12px;font-weight:500;text-align:left;margin:0 4px 4px}.studio .wf-palette-node{display:flex;align-items:flex-start;gap:8px;padding:12px 10px;width:100%;height:auto;min-height:100px;margin:0;border:1px solid hsl(var(--studio-border));border-radius:12px;background:hsl(var(--studio-secondary) / .3);color:hsl(var(--studio-foreground))}.studio .wf-palette-node:hover{background:hsl(var(--studio-primary) / .06);border-color:hsl(var(--studio-primary) / .45)}.studio .wf-palette-node>span:first-child{width:28px;height:28px;flex:0 0 28px;color:hsl(var(--studio-primary))!important;background:hsl(var(--studio-primary) / .12);border-radius:8px}.studio .wf-palette-node .studio-library-item-text{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;gap:5px;text-align:left;white-space:normal;overflow-wrap:anywhere}.studio .studio-library-item-text strong{color:hsl(var(--studio-foreground));font-size:13px;font-weight:600;line-height:1.6}.studio .studio-library-item-text small{color:hsl(var(--studio-muted));font-size:11px;font-weight:400;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;overflow-wrap:anywhere}.studio .wf-palette-node>svg:last-child{display:block;color:hsl(var(--studio-muted) / .5);margin-left:0;margin-top:7px}.studio .wf-palette-bottom{display:flex;color:hsl(var(--studio-muted));font-size:12px;margin:24px 20px 0}.studio .wf-palette.library-dragging{opacity:0;pointer-events:none}.studio .wf-scene-library{padding:20px}.studio :is(.wf-scene-library-heading,.wf-scene-library-hint){color:hsl(var(--studio-muted));font-size:12px}.studio .wf-scene-library-heading b{background:hsl(var(--studio-secondary));color:hsl(var(--studio-muted))}.studio .wf-scene-library-actions{margin:16px 0 24px;gap:10px}.studio .wf-scene-library-actions button{min-height:36px;border-radius:8px;font-size:13px;color:hsl(var(--studio-foreground));background:hsl(var(--studio-secondary));border-color:hsl(var(--studio-border))}.studio .wf-scene-library-actions button:hover{background:hsl(var(--studio-accent));border-color:hsl(var(--studio-primary) / .4)}.studio .wf-saved-scenes{gap:12px}.studio .wf-saved-scene{min-height:128px;padding:20px;border-radius:12px;background:hsl(var(--studio-secondary) / .25);border-color:hsl(var(--studio-border));box-shadow:none}.studio .wf-saved-scene.active{background:hsl(var(--studio-primary) / .08);border-color:hsl(var(--studio-primary) / .45)}.studio .wf-saved-scene:hover{background:hsl(var(--studio-secondary));border-color:hsl(var(--studio-primary) / .5)}.studio .wf-saved-scene-delete{top:15px;right:15px}.studio .wf-saved-scene-name{color:hsl(var(--studio-primary));gap:10px}.studio .wf-saved-scene .wf-saved-scene-name strong{color:hsl(var(--studio-foreground));font-size:16px}.studio .wf-saved-scene-meta{color:hsl(var(--studio-muted));font-size:12px;padding-left:25px}.studio .wf-saved-scene-bottom{color:hsl(var(--studio-muted));font-size:12px}.studio .wf-saved-scene-bottom em{color:hsl(var(--studio-primary));background:hsl(var(--studio-primary) / .12);font-size:11px}.studio .wf-saved-scene-bottom em.draft{color:var(--studio-trigger);background:color-mix(in srgb,var(--studio-trigger) 12%,transparent)}.studio .workflow-node{color:hsl(var(--studio-foreground));background:hsl(var(--studio-card));border:1px solid hsl(var(--studio-border));border-radius:16px;box-shadow:0 2px 7px #0001}.studio .workflow-node.wn-kind-timer{width:240px}.studio .workflow-node.selected{outline:2px solid hsl(var(--studio-primary));outline-offset:3px}.studio .workflow-node.node-error{background:hsl(var(--studio-card));border-color:hsl(var(--studio-danger))}.studio .workflow-node.node-error .wn-status{color:hsl(var(--studio-danger))}.studio input[type=checkbox]{accent-color:hsl(var(--studio-primary))}.studio .wn-header{padding:14px 14px 6px;gap:8px;border-radius:16px 16px 0 0}.studio .wn-header strong{color:hsl(var(--studio-foreground));font-size:16px;font-weight:600;min-width:0}.studio .wn-icon{width:32px;height:32px;flex:0 0 32px;border-radius:10px;background:hsl(var(--studio-primary) / .12);color:hsl(var(--studio-primary))}.studio .wn-icon svg{width:20px;height:20px}.studio :is(.wn-kind-cv,.wn-kind-vlm,.wn-kind-llm) .wn-icon{color:#fff;background:#7264ee}.studio .wn-description{height:auto;min-height:20px;margin:6px 14px 10px;color:hsl(var(--studio-muted));font-size:12px;line-height:1.6}.studio :is(.wn-feed-tag,.wn-entry){background:hsl(var(--studio-secondary));color:hsl(var(--studio-muted));font-size:10px;padding:3px 5px}.studio .wn-port{color:hsl(var(--studio-muted));font-size:11px}.studio .wn-port.top,.studio .wn-port.bottom{background:hsl(var(--studio-card));font-size:11px}.studio .workflow-node .react-flow__handle{width:10px;height:10px;background:hsl(var(--studio-muted));border:2px solid hsl(var(--studio-card));box-shadow:0 0 0 1px hsl(var(--studio-border))}.studio .wn-status{background:hsl(var(--studio-secondary) / .3);color:hsl(var(--studio-muted));border-color:hsl(var(--studio-divider));border-radius:0 0 16px 16px;font-size:11px}.studio .wn-preview{margin:0 12px 10px;border-radius:8px;background:hsl(var(--studio-secondary))}.studio .wn-preview-label,.studio .wn-preview-frame{color:#eef0f6;background:#16171dcc}.studio .wn-preview-loading{color:hsl(var(--studio-muted));background:hsl(var(--studio-secondary))}.studio :is(.wn-vehicle-primary>span,.wn-telemetry span,.wn-observation-meta,.wn-target-list>div,.wn-passengers small,.wn-check>div:first-child,.wn-metric-row,.wn-monitor-signal,.wn-speech-card>span,.wn-live-clock){color:hsl(var(--studio-muted))}.studio :is(.wn-vehicle-primary strong,.wn-telemetry b,.wn-observation-meta b,.wn-passengers b,.wn-metric-row strong){color:hsl(var(--studio-foreground))}.studio :is(.wn-telemetry,.wn-target-list>div,.wn-passengers label,.wn-check,.wn-metric-row,.wn-live-clock){border-color:hsl(var(--studio-divider))}.studio .wn-telemetry span,.studio .wn-telemetry b{font-size:11px}.studio :is(.wn-doors span,.wn-gears,.wn-hold-progress){background:hsl(var(--studio-secondary));color:hsl(var(--studio-muted))}.studio .wn-doors b{color:hsl(var(--studio-muted))}.studio .wn-doors .open,.studio .wn-doors .open b{color:var(--studio-trigger);background:color-mix(in srgb,var(--studio-trigger) 10%,transparent)}.studio .wn-gears button{color:hsl(var(--studio-muted));border-radius:5px}.studio .wn-gears button[aria-pressed=true]{color:hsl(var(--studio-primary));background:hsl(var(--studio-primary) / .14)}.studio .wn-passengers select{color:hsl(var(--studio-foreground));background:hsl(var(--studio-secondary));border-color:hsl(var(--studio-input));font-size:12px;border-radius:8px}.studio :is(.wn-check p,.wn-check-note,.wn-camera-threshold,.wn-empty,.wn-monitor>p,.wn-gate>p,.wn-live-clock,.wn-image-meta,.wn-unavailable,.wn-model-context,.wn-speech-card>small,.wn-speech-card>em){color:hsl(var(--studio-muted));font-size:11px}.studio .wn-decision{background:color-mix(in srgb,var(--studio-trigger) 9%,transparent);color:var(--studio-trigger);border-radius:8px}.studio .wn-decision small{color:hsl(var(--studio-muted))}.studio .wn-decision.matched{color:var(--studio-success);background:color-mix(in srgb,var(--studio-success) 10%,transparent)}.studio .wn-check.passed>div:first-child,.studio .wn-check.passed em{color:var(--studio-success)}.studio .wn-check em{color:hsl(var(--studio-muted))}.studio .wn-hold-progress>i{background:var(--studio-success)}.studio .wn-target-list .near{color:var(--studio-trigger)}.studio .wn-target-list .near i{background:var(--studio-trigger)}.studio .wn-monitor-signal i.active,.studio .wn-live-clock i.active{background:var(--studio-success)}.studio .wn-metric-row strong.matched{color:var(--studio-success)}.studio .wn-speech-card>p{color:hsl(var(--studio-foreground));background:hsl(var(--studio-secondary));border-radius:8px}.studio :is(.wn-model-banner,.wf-model-explanation){color:hsl(var(--studio-primary));background:hsl(var(--studio-primary) / .09);border-radius:8px;font-size:11px}.studio :is(.wn-confidence,.wn-model-section){color:hsl(var(--studio-primary))}.studio .wn-model-reply{color:hsl(var(--studio-muted));background:hsl(var(--studio-primary) / .05);border-color:hsl(var(--studio-primary) / .2);border-radius:8px}.studio .wn-model-reply.ready{color:hsl(var(--studio-foreground))}.studio .workflow-node.flow-matched{border-color:var(--studio-success);background:hsl(var(--studio-card));box-shadow:0 0 0 1px color-mix(in srgb,var(--studio-success) 20%,transparent)}.studio .workflow-node.flow-matched .wn-header{background:color-mix(in srgb,var(--studio-success) 8%,transparent);border-radius:16px 16px 0 0}.studio .workflow-node.flow-matched .wn-header strong{color:hsl(var(--studio-foreground))}.studio .workflow-node.flow-matched .wn-icon{color:var(--studio-success);background:color-mix(in srgb,var(--studio-success) 12%,transparent)}.studio .workflow-node.flow-matched .wn-feed-tag{color:var(--studio-success);background:color-mix(in srgb,var(--studio-success) 14%,transparent)}.studio .workflow-node.flow-matched .wn-status{color:var(--studio-success);background:color-mix(in srgb,var(--studio-success) 5%,transparent);border-color:color-mix(in srgb,var(--studio-success) 20%,transparent)}.studio .workflow-node.flow-triggered{border-color:var(--studio-trigger);background:hsl(var(--studio-card));animation:studio-trigger-glow 1.2s ease-in-out infinite}.studio .workflow-node.flow-triggered .wn-header{background:color-mix(in srgb,var(--studio-trigger) 9%,transparent);border-radius:16px 16px 0 0}.studio .workflow-node.flow-triggered .wn-header strong{color:hsl(var(--studio-foreground))}.studio .workflow-node.flow-triggered .wn-icon{color:var(--studio-trigger);background:color-mix(in srgb,var(--studio-trigger) 12%,transparent)}.studio .workflow-node.flow-triggered .wn-feed-tag{color:var(--studio-trigger);background:color-mix(in srgb,var(--studio-trigger) 14%,transparent)}.studio .workflow-node.flow-triggered .wn-status{color:var(--studio-trigger);background:color-mix(in srgb,var(--studio-trigger) 5%,transparent);border-color:color-mix(in srgb,var(--studio-trigger) 20%,transparent)}.studio .workflow-node.flow-triggered .wn-speech-card>p{color:var(--studio-trigger);background:color-mix(in srgb,var(--studio-trigger) 7%,transparent)}.studio .workflow-node.flow-matched .react-flow__handle{background:var(--studio-success);box-shadow:0 0 0 1px var(--studio-success)}.studio .workflow-node.flow-triggered .react-flow__handle{background:var(--studio-trigger);box-shadow:0 0 0 1px var(--studio-trigger)}.studio .workflow-node.flow-paused{animation-play-state:paused}.studio .wf-graph .workflow-edge-neutral .react-flow__edge-path{stroke:hsl(var(--studio-muted))!important;stroke-opacity:.5}.studio .wf-graph .workflow-edge-matched .react-flow__edge-path{stroke:var(--studio-success)!important;filter:none}.studio .wf-graph .workflow-edge-triggered .react-flow__edge-path{stroke:var(--studio-trigger)!important;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--studio-trigger) 20%,transparent))}.studio .canvas-control-island.react-flow__controls{display:flex;flex-direction:column;gap:3px;padding:5px;border:1px solid hsl(var(--studio-border) / .9);border-radius:14px;background:linear-gradient(145deg,hsl(var(--studio-card) / .98),hsl(var(--studio-secondary) / .9));box-shadow:var(--studio-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);bottom:16px;left:16px}.studio .canvas-control-island.react-flow__controls button{width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:hsl(var(--studio-muted))}.studio .canvas-control-island.react-flow__controls button svg{width:16px;height:16px;fill:currentColor}.studio .canvas-control-island.react-flow__controls button:hover{background:hsl(var(--studio-primary) / .15);color:hsl(var(--studio-primary))}.studio .wf-graph .react-flow__minimap{inset:16px 12px auto auto;width:150px;height:96px;border-radius:12px;overflow:hidden;border:1px solid hsl(var(--studio-border));background:hsl(var(--studio-card));box-shadow:none}.studio .react-flow__minimap-mask{fill:hsl(var(--studio-secondary) / .6)}.studio .react-flow__attribution{background:hsl(var(--studio-card) / .7);color:hsl(var(--studio-muted))}.studio .wf-debug-panel{border-color:hsl(var(--studio-divider));background:hsl(var(--studio-card))}.studio .wf-debug-heading{border-color:hsl(var(--studio-divider));padding:0 12px;color:hsl(var(--studio-muted))}.studio .wf-debug-heading strong{color:hsl(var(--studio-foreground));font-size:12px}.studio :is(.wf-validation-summary,.wf-highlight-legend,.wf-demo-buttons,.wf-demo-buttons>span){color:hsl(var(--studio-muted))}.studio .wf-highlight-legend{gap:10px;font-size:9px;margin-right:0}.studio .wf-highlight-legend i.matched{background:var(--studio-success)}.studio .wf-highlight-legend i.triggered{background:var(--studio-trigger)}.studio .wf-demo-buttons{padding:10px 12px;flex-wrap:wrap;gap:6px}.studio .wf-demo-buttons button{color:hsl(var(--studio-muted));background:hsl(var(--studio-secondary) / .6);border-color:hsl(var(--studio-border));font-size:11px;border-radius:6px}.studio .wf-demo-buttons button:hover{color:hsl(var(--studio-primary));background:hsl(var(--studio-accent))}.studio :is(.wf-checks>div>span,.wf-checks p,.wf-checks-empty,.wf-event-log,.wf-event-log code,.wf-event-log time){color:hsl(var(--studio-muted))}.studio .wf-checks>div.passed>span{color:var(--studio-success)}.studio .wf-speech{background:hsl(var(--studio-secondary));color:hsl(var(--studio-muted))}.studio .wf-speech.has-speech{color:var(--studio-success);background:color-mix(in srgb,var(--studio-success) 8%,transparent)}.studio .wf-issues button{color:var(--studio-trigger);background:color-mix(in srgb,var(--studio-trigger) 10%,transparent)}.studio .wf-notice{color:hsl(var(--studio-foreground));background:hsl(var(--studio-popover));border-color:hsl(var(--studio-border));border-radius:12px;box-shadow:var(--studio-shadow)}.studio .wf-path-indicator{color:hsl(var(--studio-muted));background:hsl(var(--studio-secondary))}.studio .wf-path-indicator.matched{color:var(--studio-success);background:color-mix(in srgb,var(--studio-success) 9%,transparent)}.studio .wf-path-indicator.triggered{color:var(--studio-trigger);background:color-mix(in srgb,var(--studio-trigger) 10%,transparent)}.studio :is(.wf-scene-dialog,.api-dialog){color:hsl(var(--studio-foreground));background:hsl(var(--studio-card));border-color:hsl(var(--studio-border));border-radius:12px;box-shadow:0 20px 100px #0005}.studio .wf-scene-dialog-heading strong{color:hsl(var(--studio-foreground))}.studio .wf-scene-dialog-heading{color:hsl(var(--studio-primary))}.studio :is(.wf-scene-dialog form>p,.dialog-footer,.api-tabs button){color:hsl(var(--studio-muted))}.studio .api-dialog pre{color:hsl(var(--studio-foreground));background:hsl(var(--studio-background));font-size:12px}.studio .api-tabs button.active{color:hsl(var(--studio-primary));border-color:hsl(var(--studio-primary))}.studio .dialog-heading>div>span{color:var(--studio-success);background:color-mix(in srgb,var(--studio-success) 10%,transparent)}.studio .workspace{grid-template-columns:220px minmax(300px,1fr) 320px}.studio :is(.left-panel,.right-panel,.world-toolbar,.sensor-dock,.sensor-heading,.detection-panel,.status-bar){background:hsl(var(--studio-card));border-color:hsl(var(--studio-divider));color:hsl(var(--studio-muted))}.studio :is(.panel-heading,.section-title,.setting-row,.right-scroll section,.cabin-section,.sensor-heading,.camera-tabs,.detection-row,.sensor-content,.dialog-heading,.dialog-footer){border-color:hsl(var(--studio-divider))}.studio :is(.panel-heading h2,.section-title,.world-title strong,.vehicle-name,.speed-row strong,.range-label b,.climate-row b,.number-stepper b,.fan-row,.window-row,.sensor-heading strong,.detection-row){color:hsl(var(--studio-foreground))}.studio :is(.panel-heading>svg,.section-title svg,.world-title svg,.sensor-heading svg){color:hsl(var(--studio-primary))}.studio :is(.small-tag,.ego-tag,.scene-thumb,.weather-button,.autopilot-card,.gear-buttons>button,.device-button,.seat-button,.number-stepper,.fan-levels button,.dimension-switch,.simulation-time,.view-tools,.zoom-tools,.camera-mode-tabs){background:hsl(var(--studio-secondary));border-color:hsl(var(--studio-border));color:hsl(var(--studio-muted))}.studio :is(.scene-card,.weather-button,.autopilot-card){border-color:hsl(var(--studio-border))}.studio .scene-card{background:hsl(var(--studio-secondary) / .4)}.studio :is(.scene-card strong,.battery-row>b,.number-stepper>b){color:hsl(var(--studio-foreground))}.studio :is(.scene-card div>span,.range-label,.range-ticks,.setting-row,.inline-note,.control-note,.keyboard-guide,.world-legend,.left-bottom,.mode-label,.battery-row,.passenger-control,.device-button,.window-row,.seat-button,.event,.event>time,.sensor-meta,.detection-header,.empty-detections){color:hsl(var(--studio-muted))}.studio :is(.weather-button.selected,.autopilot-card.active,.gear-buttons>button.selected,.device-button.active,.seat-button.active,.dimension-switch button.active,.camera-mode-tabs button.active,.view-tools button.active){color:hsl(var(--studio-primary));border-color:hsl(var(--studio-primary) / .45);background:hsl(var(--studio-primary) / .12)}.studio .weather-button.selected svg{color:hsl(var(--studio-primary))}.studio .switch{background:hsl(var(--studio-input))}.studio .switch.on{background:hsl(var(--studio-primary))}.studio .switch>span{background:hsl(var(--studio-card))}.studio .switch.on>span{background:hsl(var(--studio-primary-foreground))}.studio :is(input[type=range],.battery-track){background:hsl(var(--studio-input))}.studio input[type=range]::-webkit-slider-thumb{background:hsl(var(--studio-primary));border-color:hsl(var(--studio-card));box-shadow:none}.studio :is(.battery-track>i,.device-button.active>i){background:var(--studio-success)}.studio :is(.playback-controls select,.passenger-control select){background:hsl(var(--studio-secondary));color:hsl(var(--studio-foreground));border-color:hsl(var(--studio-input));border-radius:8px}.studio .play-button{color:hsl(var(--studio-primary));background:hsl(var(--studio-primary) / .12)}.studio :is(.camera-tabs button,.dimension-switch button,.camera-mode-tabs button){color:hsl(var(--studio-muted))}.studio .camera-tabs button.active{color:hsl(var(--studio-primary))}.studio .camera-tabs button.active:after{background:hsl(var(--studio-primary))}.studio :is(.sensor-heading em,.detection-header b){color:hsl(var(--studio-primary));background:hsl(var(--studio-primary) / .1)}.studio .detection-row>b.near{color:var(--studio-trigger)}.studio .detection-row>b{color:hsl(var(--studio-foreground))}.studio .detection-row small{color:hsl(var(--studio-muted))}.studio :is(.sensor-watermark,.frame-tag){color:#e4e8f1;background:#17181fcc;border-color:#ffffff1a}.studio .sensor-watermark b{color:#f1f2f8}.studio .keyboard-guide kbd{color:hsl(var(--studio-muted));background:hsl(var(--studio-secondary));border-color:hsl(var(--studio-border));box-shadow:none}.studio .world-stage .map-heading{color:hsl(var(--studio-foreground));background:hsl(var(--studio-card) / .88);border-color:hsl(var(--studio-border));border-radius:12px}.studio .world-stage .map-heading :is(h1,p,div){color:hsl(var(--studio-foreground))}.studio .world-stage .map-heading p{color:hsl(var(--studio-muted))}.studio .door-button{background:hsl(var(--studio-secondary));border-color:hsl(var(--studio-border));color:hsl(var(--studio-foreground));border-radius:8px}.studio .door-button>span{color:hsl(var(--studio-muted));font-size:11px}.studio .door-button.open{background:color-mix(in srgb,var(--studio-trigger) 10%,hsl(var(--studio-card)));border-color:var(--studio-trigger)}.studio .door-button.open>span{color:var(--studio-trigger)}.studio .speech-form{height:36px;border-radius:8px;border-color:hsl(var(--studio-input));background:hsl(var(--studio-secondary))}.studio .speech-form>input{color:hsl(var(--studio-foreground));font-size:12px}.studio .speech-form>button{color:hsl(var(--studio-primary));border-color:hsl(var(--studio-border))}.studio .panel-heading h2{font-size:14px;font-weight:600}.studio .section-title{font-size:13px}.studio :is(.weather-button,.setting-row,.passenger-control select,.device-button){font-size:12px}.studio :is(.inline-note,.control-note,.keyboard-guide>span){font-size:11px;line-height:1.7}.studio .device-button{min-height:36px;border-radius:8px}.studio .fan-levels button.active{color:hsl(var(--studio-primary));background:hsl(var(--studio-primary) / .14);border-color:hsl(var(--studio-primary) / .3)}.studio .world-stage .map-badges>span,.studio .world-stage .map-bottom>span{color:hsl(var(--studio-foreground));background:hsl(var(--studio-card) / .88);border-color:hsl(var(--studio-border))}.studio .status-bar{height:24px;min-height:24px;padding:0 14px;color:hsl(var(--studio-muted));font-size:10px}.studio .status-bar>span:nth-child(2),.studio .status-bar>span:nth-child(3){font-size:9px}.studio .status-separator{color:hsl(var(--studio-muted) / .35)}@keyframes studio-panel-enter{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes studio-trigger-glow{0%,to{box-shadow:0 0 0 2px color-mix(in srgb,var(--studio-trigger) 20%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--studio-trigger) 6%,transparent),0 4px 18px color-mix(in srgb,var(--studio-trigger) 10%,transparent)}}@media(max-width:1180px){.studio .workflow-workspace.wf-live-workspace.inspector-open{grid-template-columns:minmax(0,1fr) 330px}.studio .workflow-workspace.wf-live-workspace .wf-inspector{width:330px}.studio .wf-toolbar-actions .secondary-button{padding:0 7px;font-size:11px}.studio .wf-scene-title input{width:136px}.studio .wf-toolbar-divider{display:none}.studio .workspace{grid-template-columns:190px minmax(280px,1fr) 290px}.studio .wf-highlight-legend{display:none}}@media(max-width:980px){.studio .workflow-workspace.wf-live-workspace.inspector-open{grid-template-columns:minmax(0,1fr)}.studio .workflow-workspace.wf-live-workspace .wf-inspector{position:absolute;inset:0 0 0 auto;width:360px;z-index:21;box-shadow:-8px 0 24px #0003}.studio .wf-toolbar-actions .secondary-button{padding:0 10px;font-size:12px}.studio .workspace{grid-template-columns:minmax(260px,1fr) 300px}.studio .workspace .left-panel{display:none}.studio .environment-trigger{display:inline-flex}.studio.environment-open .left-panel{display:flex;position:fixed;inset:64px auto 24px 56px;width:250px;z-index:20}}@media(max-width:700px){.studio .app-header{padding:0 12px}.studio-wordmark span,.studio .header-actions .local-status{display:none}.studio .workspace-tabs button{padding:0 10px;font-size:12px}.studio .workflow-workspace.wf-live-workspace{grid-template-rows:74px minmax(0,1fr)}.studio .wf-toolbar{flex-wrap:wrap;align-content:center;gap:4px}.studio .wf-toolbar-actions{margin-left:0;gap:4px}.studio .wf-toolbar-actions>.wf-icon-button{display:grid;width:25px;height:25px}.studio .wf-toolbar-actions .secondary-button{font-size:10px;padding:0 6px}.studio .wf-toolbar-actions .primary-button{font-size:11px;padding:0 8px}.studio .wf-palette.studio-library-panel{width:100%}.studio .wf-inspector-body{padding:20px 16px}.studio .workflow-workspace.wf-live-workspace .wf-inspector{width:min(360px,100%)}.studio .status-bar>span:nth-child(2){display:none}.studio .workspace{grid-template-columns:minmax(220px,1fr)}.studio .workspace .right-panel{min-height:0;max-height:35vh;overflow:auto}}@media(prefers-reduced-motion:reduce){.studio .wf-palette.studio-library-panel,.studio .workflow-node.flow-triggered{animation:none}}.studio.app{min-height:0}.studio-tasks-entry{position:relative}.studio .wf-toolbar{position:relative;z-index:30;overflow:visible}.studio .wf-scene-title{flex:1;min-width:0}.studio .wf-scene-title input{max-width:100%}.studio .wf-toolbar-actions{flex:0 0 auto;gap:8px}.studio .wf-toolbar-actions .oak-menu-panel{font-size:12px}.studio .wf-canvas-actions{gap:5px}.studio .wf-canvas-actions>.wf-text-button{padding:5px 8px}.studio .wf-debug-panel.wf-debug-collapsed{min-height:42px;height:42px;max-height:42px;flex:0 0 42px;overflow:hidden}.studio .world-toolbar{position:relative;z-index:31}.studio-status-quiet{justify-content:space-between}.runtime-details{position:relative;font-size:11px}.runtime-details>summary{cursor:pointer;list-style:none;color:hsl(var(--studio-muted))}.runtime-details>summary::-webkit-details-marker{display:none}.runtime-details>div{position:absolute;bottom:calc(100% + 12px);right:0;min-width:260px;display:grid;gap:12px;padding:16px;border:1px solid hsl(var(--studio-border));border-radius:10px;background:hsl(var(--studio-popover));box-shadow:var(--studio-shadow)}.runtime-details>div>span{display:block;white-space:nowrap;font-size:11px}@media(max-width:700px){.studio .wf-toolbar-actions .secondary-button,.studio .wf-toolbar-actions .primary-button{min-height:32px;font-size:12px;padding:0 10px}.studio .wf-toolbar{padding-inline:14px}.studio .wf-toolbar-actions{margin-left:auto}}.studio>.workspace{grid-template-columns:minmax(0,1fr)}.studio .world-settings-backdrop{position:fixed;inset:64px 0 24px 56px;z-index:51;border:0;background:#0003}.world-settings-drawer{position:fixed;inset:64px 0 24px auto;z-index:52;display:flex;flex-direction:column;width:min(340px,calc(100vw - 56px));min-height:0;background:hsl(var(--studio-card));border-left:1px solid hsl(var(--studio-border));box-shadow:-8px 0 28px #0002}.world-settings-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding:10px 14px;border-bottom:1px solid hsl(var(--studio-divider))}.world-settings-header>div{display:flex;gap:6px}.world-settings-header button{border-radius:6px;padding:6px 10px;font-size:12px}.world-settings-header button.active{background:hsl(var(--studio-primary) / .12);color:hsl(var(--studio-primary))}.studio .world-settings-drawer>:is(.left-panel,.right-panel){position:static;inset:auto;display:flex;flex:1;flex-direction:column;min-height:0;max-height:none;width:100%;border:0;overflow:auto;box-shadow:none}
