:root{color-scheme:dark;--bg:#15171b;--surface:#22252b;--raised:#2c3037;--text:#f5f6f8;--muted:#aeb5c1;--line:#657080;--accent:#79adff;--ink:#101c30;--error:#ff969e;--good:#83d9ab;font-family:"Segoe UI",system-ui,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-width:280px}button,input,select{font:inherit}button,select{min-height:44px;border:1px solid var(--line);border-radius:12px;background:var(--raised);color:var(--text);padding:10px 14px}button{cursor:pointer;font-weight:600}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.62;cursor:wait}button.primary{background:var(--accent);color:var(--ink);border-color:transparent}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible,main:focus-visible{outline:3px solid var(--accent);outline-offset:3px}input[type=password],input[type=text]{width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--text);padding:12px}input[aria-invalid=true]{border-color:var(--error)}a{color:var(--accent)}p{line-height:1.6}h1,h2,p{margin-top:0}h1{font-size:clamp(28px,3.6vw,42px);line-height:1.15;letter-spacing:-.04em;max-width:13ch;margin-bottom:22px}h2{font-size:22px;letter-spacing:-.02em}label{font-weight:600}.masthead{max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 32px;border-bottom:1px solid var(--raised)}.brand{font-size:26px;letter-spacing:-.05em;text-decoration:none;color:var(--text);font-weight:700;display:flex;align-items:baseline;gap:16px}.brand span{font-size:13px;font-weight:400;color:var(--muted);letter-spacing:0}.locale select{font-size:14px}.login{width:min(100% - 64px,980px);margin:clamp(32px,8vh,96px) auto;display:grid;grid-template-columns:1fr 400px;gap:72px;align-items:center}.intro>p:not(.eyebrow){color:var(--muted);max-width:40ch}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-weight:700;margin-bottom:22px}.steps{padding:0;margin:32px 0;list-style:none;counter-reset:steps}.steps li{counter-increment:steps;display:flex;gap:12px;align-items:center;font-size:14px;margin:16px 0;line-height:1.5}.steps li:before{content:counter(steps);border:1px solid var(--line);border-radius:50%;width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;font-variant-numeric:tabular-nums;color:var(--accent)}.network{font-size:13px;border-top:1px solid var(--raised);padding-top:18px}.sign-in{padding:32px;background:var(--surface);border:1px solid var(--raised);border-radius:26px}.sign-in>p{color:var(--muted);font-size:14px}.sign-in>label{display:block;margin:28px 0 10px}.key-field{display:flex;gap:8px;align-items:stretch}.key-field button{font-size:13px;padding:8px 10px;min-width:78px}.hint{color:var(--muted);font-size:12px;line-height:1.6;margin:10px 0 0}.sign-in .error{color:var(--error);min-height:42px;font-size:13px;margin:14px 0 10px}.sign-in>.primary{width:100%;min-height:48px}.sign-in .privacy{font-size:12px;margin:20px 0 0}.workspace{width:min(100%,1440px);margin:auto;display:flex;flex-direction:column;height:calc(100dvh - 85px);min-height:420px;padding:0 24px}.connection{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:74px;padding:10px 0}.presence{display:flex;align-items:center;gap:10px;font-size:13px;min-width:0}.dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex:0 0 8px}.dot.online{background:var(--good)}.connection-actions{display:flex;align-items:center;gap:8px}.connection-actions button{font-size:13px;padding:8px 12px}.screen-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:400;color:var(--muted)}.screen-label select{font-size:13px}.apps{display:flex;gap:6px;overflow-x:auto;flex-shrink:0;padding:8px 2px 14px;border-bottom:1px solid var(--raised)}.apps button,.apps select{white-space:nowrap;flex-shrink:0;font-size:14px;background:transparent;border-color:transparent}.apps button[aria-current=page]{background:var(--accent);color:var(--ink)}.apps select{background:var(--surface);border-color:var(--line);max-width:200px}.notice{margin:auto;max-width:540px;text-align:center;padding:40px 16px}.notice h2{font-size:26px}.notice p{font-size:15px;color:var(--muted)}.frame-wrap{position:relative;flex:1;min-height:220px;margin-top:12px;border-radius:18px;overflow:hidden;background:var(--surface);border:1px solid var(--line)}iframe{display:block;border:0;width:100%;height:100%;background:var(--surface)}.frame-loading{position:absolute;inset:0;display:grid;place-items:center;background:var(--surface);padding:24px;text-align:center}.frame-wrap.disconnected:after{content:"";position:absolute;inset:0;cursor:not-allowed}.frame-wrap.disconnected{border-style:dashed}.feedback{min-height:40px;flex-shrink:0;font-size:12px;color:var(--muted);padding:12px 2px;line-height:1.5}.feedback.error{color:var(--error)}dialog{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:24px;padding:28px;width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto}dialog::backdrop{background:#0009}dialog p{color:var(--muted);font-size:14px;white-space:pre-line}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;flex-wrap:wrap}dialog select{display:block;width:100%;margin-top:8px}fieldset{margin:20px 0 0;border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;gap:16px;flex-wrap:wrap}fieldset label{display:flex;align-items:center;min-height:28px;gap:6px}legend{color:var(--muted);font-size:13px}.skip{position:fixed;left:16px;top:-100px;z-index:5;padding:12px;background:var(--surface)}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}*{scrollbar-color:var(--line) var(--bg);scrollbar-width:thin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}
@media(prefers-color-scheme:light){:root{color-scheme:light;--bg:#cfd6df;--surface:#dfe5eb;--raised:#d4dce5;--text:#141820;--muted:#48596f;--line:#737e8e;--accent:#195acb;--ink:#fff;--error:#a42620;--good:#187344}.sign-in{border-color:var(--line)}}
@media(max-width:760px){.masthead{padding:14px 18px}.brand{gap:10px;font-size:24px}.brand span{font-size:11px}.locale select{padding:8px;min-height:40px}.login{width:calc(100% - 36px);margin:30px auto;grid-template-columns:1fr;gap:24px}.intro{padding:0 8px}h1{max-width:20ch;font-size:30px;margin-bottom:14px}.eyebrow{margin-bottom:14px}.intro>p{font-size:14px}.steps{margin:22px 0}.steps li{margin:12px 0}.sign-in{padding:24px}.network{margin-bottom:0}.workspace{padding:0 10px;height:calc(100dvh - 70px)}.connection{flex-wrap:wrap;gap:8px;padding:12px 2px;min-height:110px}.presence{flex-basis:100%}.connection-actions{width:100%;justify-content:space-between;gap:6px}.screen-label>span{display:none}.screen-label select{padding:8px;font-size:12px;max-width:156px}.connection-actions button{padding:8px 10px;font-size:12px}.apps{padding-bottom:10px}.apps button,.apps select{font-size:13px;padding:10px 12px}.frame-wrap{border-radius:12px;margin-top:8px}.feedback{font-size:11px;min-height:38px}.notice h2{font-size:23px}}
@media(max-width:360px){.brand span{display:none}.login{width:calc(100% - 24px)}.sign-in{padding:20px}.connection-actions button{padding:8px}.screen-label select{max-width:140px}}@media(max-height:500px) and (min-width:761px){.masthead{padding:8px 24px}.workspace{height:calc(100dvh - 61px)}.connection{min-height:58px}.apps{padding:2px 0 8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}@media(forced-colors:active){button.primary,.apps button[aria-current=page]{border:2px solid Highlight}.dot{outline:2px solid CanvasText}}
