:root{color:#e8eaf1;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;background:#101218;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}.program #app{flex-direction:column;height:100dvh;display:flex}.program header{flex-shrink:0;width:100%;max-width:none;padding:8px 20px}.program header h1{margin:0;font-size:19px}.program header p,.program header .eyebrow,.program footer{display:none}.program main{flex:1;gap:12px;width:100%;max-width:none;min-height:0;padding:0 12px 12px;display:flex}.workspace{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex;position:relative}.program .card{border-radius:8px;margin:0;padding:10px}.program .tools{min-height:28px;margin:0}.app-menu>summary{cursor:pointer}.app-menu[open]{z-index:10;color:canvastext;background:canvas;border:1px solid #71809b;border-radius:10px;width:min(640px,100%);max-height:85vh;padding:14px;position:absolute;top:0;right:0;overflow:auto;box-shadow:0 16px 40px #0005}.program #viewer{flex-direction:column;flex:1;min-height:160px;display:flex}.program #screen{flex:1;height:0;min-height:100px}.program .viewer-tools{flex-shrink:0;max-height:45vh;padding:8px;overflow:auto}.program .viewer-tools>select{width:auto;max-width:100%;margin-bottom:6px}.program .session-bar{flex-wrap:wrap;gap:8px;margin:0}.program .hint{margin:0;font-size:11px}#address-book{border-right:1px solid #71809b55;flex-shrink:0;width:245px;padding:8px 12px 8px 0;overflow:auto}#address-book h2{font-size:18px}#address-book p{font-size:11px}.book-row{gap:4px;margin:6px 0;display:flex}.book-row button:first-child{text-align:left;white-space:pre-line;overflow-wrap:anywhere;flex:1}@media (max-width:720px){.program main{flex-direction:column;overflow:auto}#address-book{flex-shrink:0;width:100%;max-height:190px}.workspace{min-height:560px}}header,main,footer{max-width:1180px;margin:auto;padding:28px 32px}header{justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}h1{letter-spacing:-.7px;margin:10px 0;font-size:28px}h2{margin:0 0 16px;font-size:23px}p{color:#aeb6c9;margin:10px 0;line-height:1.65}.eyebrow{letter-spacing:1.8px;text-transform:uppercase;color:#9caefe;font-size:11px}.version{color:#aeb6c9;border:1px solid #363d50;border-radius:20px;padding:6px 12px;font-size:12px}.card{background:#1a1e28;border:1px solid #303747;border-radius:16px;margin-bottom:20px;padding:24px}.auth{max-width:460px;margin:36px auto}.auth form{gap:18px;display:grid}.tools{justify-content:space-between;margin-bottom:12px;display:flex}label{color:#bdc5d6;flex-direction:column;gap:9px;font-size:13px;font-weight:600;display:flex}input{color:inherit;font:inherit;background:#11151e;border:1px solid #434e66;border-radius:9px;width:100%;min-width:0;padding:13px 14px;font-size:16px}select{font:inherit;color:inherit;background:#11151e;border:1px solid #434e66;border-radius:9px;width:100%;min-width:0;padding:10px}select:focus-visible,summary:focus-visible{outline-offset:3px;outline:2px solid #9eb0ff}.viewer-tools{background:#1a1e28;border:1px solid #303747;border-radius:12px 12px 0 0;padding:12px}.display-options{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;padding-top:18px;display:grid}.display-options p,.display-options small{grid-column:1/-1}.display-options button{align-self:end}#screen{border-radius:0 0 12px 12px;height:min(65vh,800px);min-height:200px;display:block}#screen canvas{max-width:none;max-height:none;margin:auto}#viewer:fullscreen{background:#101218;flex-direction:column;display:flex}#viewer:fullscreen #screen{flex:1;height:0;min-height:0}#viewer:fullscreen .viewer-tools{flex-shrink:0;max-height:45vh;overflow:auto}input:focus,button:focus-visible,canvas:focus-visible{outline-offset:3px;outline:2px solid #9eb0ff}button{font:inherit;color:#152146;cursor:pointer;white-space:nowrap;background:#adbbff;border:1px solid #0000;border-radius:9px;padding:13px 18px;font-size:14px;font-weight:600}button:hover{filter:brightness(1.08)}button:disabled{opacity:.4;cursor:default}.quiet{color:#c3ccdf;background:0 0;border-color:#414c62}.settings{grid-template-columns:1fr 1fr;gap:18px;margin-top:22px;display:grid}.settings .wide{grid-column:1/-1}.settings button{justify-self:start}summary{cursor:pointer;font-weight:600}.connection{align-items:flex-end;gap:16px;display:flex}.connection form{flex:1;align-items:flex-end;gap:16px;display:flex}.connection label{flex:1}#deviceId{letter-spacing:2px;padding:10px 14px;font-size:22px}.session-bar{align-items:center;gap:18px;margin:22px 0 12px;font-size:13px;display:flex}#status{flex:1}#frames{color:#9ba7bd;font-size:12px}.live{color:#83d9a4}.screen{background:#080a10;border:1px solid #303747;border-radius:14px;place-items:center;min-height:240px;display:grid;overflow:auto}.screen p{text-align:center;padding:48px}.screen canvas{touch-action:none;cursor:crosshair;width:100%;height:auto;display:block}.screen:fullscreen{border:0;border-radius:0;align-content:center}.screen:fullscreen canvas{width:auto;max-width:100vw;height:auto;max-height:100vh}#unlock{align-items:flex-end;gap:18px;display:flex}#unlock label{flex:1}.hint,footer{color:#8e9ab2;font-size:12px}footer{text-align:center;padding-top:0}#notice{color:#c5ebc5;background:#192b21;border:1px solid #567552;border-radius:10px;padding:16px}#notice.error{color:#ffc6d4;background:#301e25;border-color:#925264}@media (max-width:700px){header,main,footer{padding:20px 16px}h1{font-size:22px}.card{padding:18px}.settings{grid-template-columns:1fr}.connection,.connection form,#unlock{flex-direction:column;align-items:stretch}.session-bar{flex-wrap:wrap}.screen{min-height:200px}.version{display:none}}@media (prefers-color-scheme:light){:root{color:#18223a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f3f5fb}.card{background:#fff;border-color:#d8deea}input,select{color:#18223a;background:#f9faff;border-color:#b4bfd2}label{color:#43526e}p,.hint,footer{color:#59677d}.quiet{color:#43526e;border-color:#b4bfd2}.eyebrow{color:#5267ad}.viewer-tools{background:#fff;border-color:#d8deea}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f5f6f8;--surface:#fff;--surface-secondary:#f6f7f9;--border:#e3e5e9;--text-primary:#24262b;--text-secondary:#737780;--success:#178647;--danger:#bf3547;--warning:#ac761e;--accent:#272b33;--shadow:0 1px 3px #17191c08;--radius:10px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;background:var(--background);color:var(--text-primary);font-family:system-ui,-apple-system,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#131519;--surface:#1c1f24;--surface-secondary:#23262d;--border:#343840;--text-primary:#eceef1;--text-secondary:#a1a7b1;--success:#69c18a;--danger:#ef8290;--warning:#e0b665;--accent:#e5e7ec}[hidden]{display:none!important}.ui-icon{vertical-align:middle;flex:0 0 18px;width:18px;height:18px;display:inline-flex}.ui-icon svg{width:100%;height:100%}.program,.program #app{background:var(--background);color:var(--text-primary)}.program #app{height:100dvh;overflow:hidden}.program :is(button,input,select,summary){font:inherit;font-size:12px}.program :is(input,select){border:1px solid var(--border);background:var(--surface-secondary);width:100%;color:var(--text-primary);border-radius:8px;min-width:0;padding:9px 10px}.program button{background:var(--accent);color:var(--surface);border:1px solid var(--accent);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:8px 12px;font-weight:500;display:inline-flex}.program .quiet,.program .icon-button{color:var(--text-primary);background:var(--surface);border-color:var(--border)}.program button:hover:not(:disabled),.program summary:hover{filter:brightness(.97)}.program button:disabled{opacity:.4;cursor:not-allowed}.program :is(button,input,select,summary):focus-visible{outline:2px solid var(--text-secondary);outline-offset:2px}.program .icon-button{flex-shrink:0;width:36px;padding:8px}.program p,.program label{color:var(--text-secondary)}.program p{line-height:1.5}.program header{border-bottom:1px solid var(--border);background:var(--surface);flex:0 0 54px;gap:12px;width:100%;max-width:none;min-height:54px;margin:0;padding:8px 16px}.app-brand{align-items:center;gap:10px;min-width:0;display:flex}.program header h1{letter-spacing:-.45px;white-space:nowrap;margin:0;font-size:15px;font-weight:600}.program .version{background:var(--surface-secondary);color:var(--text-secondary);border:0;padding:3px 6px;font-size:10px}.header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.program .quick-search{min-width:185px;color:var(--text-secondary);background:var(--surface-secondary);justify-content:flex-start}.quick-search kbd{margin-left:auto;font-size:10px}.program .app-menu,.program .app-menu[open]{width:auto;box-shadow:none;z-index:30;background:0 0;border:0;max-height:none;padding:0;position:relative;overflow:visible}.app-menu>summary{cursor:pointer;align-items:center;gap:8px;min-height:36px;padding:4px 8px;list-style:none;display:flex}summary::-webkit-details-marker{display:none}.menu-items{background:var(--surface);border:1px solid var(--border);border-radius:10px;min-width:240px;padding:6px;position:absolute;top:44px;right:0;box-shadow:0 12px 30px #0002}.menu-items button{justify-content:flex-start;width:100%;border:none!important}.program #workbench{flex:1;grid-template-columns:244px minmax(0,1fr) 250px;gap:10px;width:100%;max-width:none;min-height:0;margin:0;padding:10px;display:grid}.program #workbench.book-collapsed{grid-template-columns:minmax(0,1fr) 250px}.program #workbench.info-collapsed{grid-template-columns:244px minmax(0,1fr)}.program #workbench.book-collapsed.info-collapsed{grid-template-columns:minmax(0,1fr)}.book-collapsed #address-book,.info-collapsed #connection-sidebar{display:none}.program #address-book{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:auto;min-height:0;padding:12px;overflow:auto}.program #address-book h2{align-items:center;gap:8px;margin:0 0 12px;font-size:14px;font-weight:600;display:flex}.program #address-book h2 .icon-button{border:0;width:28px;min-height:28px;margin-left:auto}.count-badge{background:var(--surface-secondary);border-radius:8px;padding:3px 8px;font-size:11px}.program #book-search{margin-bottom:8px}.program #address-book p,.program #address-book>label{font-size:11px;line-height:1.6}.program #address-book>details{margin:12px 0}.program #address-book>details>summary{border:1px solid var(--border);cursor:pointer;background:var(--surface-secondary);border-radius:8px;padding:10px}.program #book-add{gap:8px;padding-top:10px;display:grid}.book-row{border:1px solid #0000;border-bottom-color:var(--border);border-radius:8px;align-items:center;gap:0;margin:4px 0;display:flex;position:relative}.book-row.selected{border-color:var(--border);background:var(--surface-secondary)}.program .book-row>button{text-align:left;white-space:normal;background:0 0;border:0;flex:1;grid-template-columns:8px 18px minmax(0,1fr) auto;gap:4px;min-width:0;padding:10px 3px;display:grid}.device-label{flex-direction:column;flex:1;min-width:0;display:flex}.device-label strong{white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.device-label small{color:var(--text-secondary);font-size:10px}.device-status{color:var(--text-secondary);background:var(--surface-secondary);border-radius:8px;grid-column:4;justify-self:end;padding:2px 4px;font-size:9px}.book-row button>.ui-icon:first-child{width:8px;height:8px;color:var(--text-secondary);flex-basis:8px}.program .book-row button[data-presence=connected]>.ui-icon:first-child,[data-presence=connected] .device-status{color:var(--success)}.program .book-row button[data-presence=offline]>.ui-icon:first-child,[data-presence=offline] .device-status{color:var(--danger)}.device-actions summary{cursor:pointer;padding:6px 0;list-style:none}.device-actions[open]{z-index:5}.device-actions[open] button{z-index:5;width:180px;box-shadow:var(--shadow);position:absolute;top:45px;right:0}.device-actions[open] button:last-child{top:82px}.program .workspace{flex-direction:column;gap:6px;min-width:0;min-height:0;display:flex}.program #viewer{flex-direction:column;flex:1;gap:8px;min-width:0;min-height:0;display:flex}.program #screen{border:1px solid var(--border);background:var(--surface-secondary);height:0;min-height:100px;box-shadow:var(--shadow);border-radius:10px;flex:1;padding:3px;overflow:auto}.program #screen canvas{margin:auto;display:block}.program #placeholder{text-align:center;height:calc(100% - 40px);color:var(--text-secondary);place-content:center;padding:20px;font-size:13px;display:grid}.program #placeholder[data-busy=true]{animation:1.6s ease-in-out infinite busy}@keyframes busy{50%{opacity:.45}}.program .viewer-tools{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;max-height:45vh;padding:6px;display:flex;overflow:auto}.program .viewer-tools>select{width:auto;max-width:240px;margin:0;font-size:11px}.program .viewer-tools button{min-height:32px;padding:6px 8px;font-size:11px}.program .display-menu{min-width:0}.program .display-menu summary{cursor:pointer;align-items:center;gap:6px;padding:8px;font-size:11px;display:flex}.program .display-menu[open]{flex-basis:100%}.program .display-options{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:8px}.program .display-options p,.program .display-options small{font-size:11px}.program .session-bar{border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);border-radius:8px;flex-wrap:wrap;flex-shrink:0;gap:12px;margin:0;padding:8px 10px;font-size:10px;display:flex}.program #status.live{color:var(--success)}.program #status-since{margin-left:auto}.program .hint{color:var(--text-secondary);margin:0;font-size:10px}#connection-sidebar{flex-direction:column;gap:10px;min-height:0;display:flex;overflow:auto}.program .card,.program .panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:10px;margin:0;padding:12px}.program .connection{display:block}.program #connection{grid-template-columns:minmax(0,1fr);gap:8px;display:grid;position:relative}.program #connection>label{color:var(--text-primary);grid-column:1/-1;font-size:12px;font-weight:600}.program #deviceId{letter-spacing:.4px;margin-top:8px;font-size:18px}.program #connect{grid-column:1/-1;width:100%}.program #copy-id{border:0;width:26px;min-height:24px;padding:4px;position:absolute;top:-5px;right:0}.program #disconnect{background:var(--surface);border-color:var(--danger);width:100%;color:var(--danger);margin-top:8px}.session-info h2{margin:0 0 14px;font-size:13px;font-weight:600}.session-info dl{margin:0}.session-info dl>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0;font-size:11px;display:flex}.session-info dt{color:var(--text-secondary)}.session-info dd{text-align:right;overflow-wrap:anywhere;max-width:60%;margin:0}.program .session-info .subtle{color:var(--text-secondary);margin:12px 0 0;font-size:10px}.program .secure-note{color:var(--success);background:color-mix(in srgb, var(--success) 8%, var(--surface));border-radius:8px;padding:10px;font-size:11px}.program #notice.error{color:var(--danger);background:var(--surface);border:1px solid var(--danger);border-radius:8px;padding:10px;font-size:12px}#server-dialog{border:1px solid var(--border);background:var(--surface);width:min(640px,100vw - 32px);max-height:85dvh;color:var(--text-primary);border-radius:12px;padding:24px;overflow:auto;box-shadow:0 20px 80px #0003}#server-dialog::backdrop{background:#15181e77}#account-dialog::backdrop{background:#15181e77}#account-dialog{border:1px solid var(--border);background:var(--surface);width:min(520px,100vw - 32px);max-height:85dvh;color:var(--text-primary);border-radius:12px;padding:24px;overflow:auto;box-shadow:0 20px 80px #0003}#account-dialog form{gap:12px;display:grid}#account-dialog label{gap:8px;display:grid}#account-dialog p{color:var(--text-secondary);line-height:1.5}#account-dialog h2{margin-top:0;font-size:18px}.dialog-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.dialog-heading h2{margin:0;font-size:18px}#server-dialog .settings{grid-template-columns:1fr}#fullscreen-controls{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.program #fullscreen-controls-toggle{display:none}.program #viewer:fullscreen{background:#101218;gap:0;padding:0;position:relative}.program #viewer:fullscreen #screen{min-height:0;box-shadow:none;border:0;border-radius:0;flex:1;padding:0}.program #viewer:fullscreen #fullscreen-controls{z-index:10;border-radius:10px;width:min(720px,100% - 24px);max-height:calc(100% - 68px);display:none;position:absolute;top:56px;right:12px;overflow:auto;box-shadow:0 8px 32px #0004}.program #viewer:fullscreen.fullscreen-controls-open #fullscreen-controls{display:flex}.program #viewer:fullscreen #fullscreen-controls-toggle{z-index:11;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;width:40px;height:40px;padding:10px;display:inline-flex;position:absolute;box-shadow:0 2px 10px #0003}.program #viewer:fullscreen #fullscreen-controls-toggle:active{cursor:grabbing}.program #viewer:fullscreen #fullscreen-controls{right:auto}@media (max-width:1100px){.quick-search span,.quick-search kbd,#account-name{display:none}.program .quick-search{min-width:36px}.program #workbench{grid-template-columns:220px minmax(0,1fr) 230px}}@media (max-width:1000px){.program #workbench:not(.info-collapsed) #connection-sidebar{z-index:15;background:var(--background);border:1px solid var(--border);border-radius:10px;width:260px;padding:8px;position:absolute;top:64px;bottom:10px;right:10px;box-shadow:0 8px 35px #0003}.program #workbench,.program #workbench.info-collapsed{grid-template-columns:220px minmax(0,1fr)}.program #workbench.book-collapsed{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.program header{gap:6px;padding:6px 8px}.program header h1{font-size:12px}.program .version,.quick-search{display:none!important}.header-actions,.app-brand{gap:4px}.app-brand img{width:22px;height:22px}.program #workbench,.program #workbench.info-collapsed,.program #workbench.book-collapsed{grid-template-columns:minmax(0,1fr);padding:6px}.program #workbench:not(.book-collapsed) #address-book{z-index:16;width:min(280px,100vw - 12px);max-height:none;position:absolute;top:60px;bottom:6px;left:6px;box-shadow:0 8px 35px #0003}.program .workspace{min-height:0}.program .viewer-tools{max-height:45dvh}.program .viewer-tools button span:not(.ui-icon){display:none}.program .session-bar{gap:6px;font-size:9px}.program .hint{display:none}}@media (prefers-reduced-motion:reduce){*{animation:none!important}}
