@font-face {
  font-family:"Space Grotesk";font-style:normal;font-weight:300 700;font-display:swap;
  src:url('./landing-assets/fonts/space-grotesk-latin.woff2') format('woff2');
}
/* Public Lite only: the palette and glass rims used by the chooser and helper. */
html[data-connect-theme="glass"] {
  color-scheme:light;
  --ink:#081844;--blue:#0073e9;--ice:#f2fbff;--muted:#486c97;
  --bg:var(--ice);--text:var(--ink);--accent:var(--blue);--line:#cde7f5;
  --font:"Space Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --lite-pc-accent:#0073e9;--glass-radius:25px;
}
body {
  color:var(--ink);
  background:radial-gradient(ellipse at 3% 15%,#dff7ff99,transparent 48%),radial-gradient(ellipse at 100% 65%,#e2efff99,transparent 45%),linear-gradient(180deg,#fbfeff,var(--ice));
}
.background { display:none; }
::selection { color:var(--ink);background:#b9edff; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible { outline:2px solid #0065c9;outline-offset:4px; }
.site-header { max-width:1120px;width:100%;height:84px;min-height:0;margin:auto;padding:20px 32px;border-bottom:1px solid var(--line);gap:20px; }
.brand { gap:11px;font-size:26px;font-weight:650;letter-spacing:-1px; }
.brand img { width:40px;height:40px;border-radius:0; }
.edition-badge { margin-left:5px;padding:4px 7px;border-color:#aeddf8;background:#e3f6ff;color:#0067c9;font-size:10px;font-weight:600;letter-spacing:.02em; }
.lite-pc-nav { gap:22px;color:var(--muted);font-size:12px; }
.lite-pc-nav a:hover { color:#0065b6; }
.lite-pc-nav .lite-pc-vps-link { padding:10px 13px;border:1px solid var(--line);border-radius:12px;background:#ffffff99;color:var(--muted); }
.lite-home { max-width:1100px;padding:64px 32px 38px;gap:36px 72px; }
.hero-copy h1 { color:var(--ink);font-weight:600; }
.hero-copy h1 span { color:#006bd5; }
.hero-copy p { color:var(--muted); }
.hero-copy .eyebrow { color:#386890;font-weight:600; }
.lite-pc-benefits li { color:#3f6486;border-color:#c9e5f5;background:#f7fdff; }

.lite-home .connect-card,.lite-home .button-primary,.lite-home .download-button {
  position:relative;isolation:isolate;
  border:1px solid #7dccf4;border-radius:var(--glass-radius);
  background:linear-gradient(145deg,#f8feff 5%,#f0faff 45%,#e1f4ff);
  box-shadow:0 18px 35px -26px #226aab65,inset 0 0 0 2px #ffffffed,inset 0 0 0 4px #a6e8ff70;
  backdrop-filter:none;
}
.lite-home :is(.connect-card,.button-primary,.download-button):before,
.lite-home :is(.connect-card,.button-primary,.download-button):after {
  content:"";position:absolute;pointer-events:none;z-index:-1;border-radius:inherit;
}
.lite-home :is(.connect-card,.button-primary,.download-button):before {
  inset:3px;border:1px solid #7dd2f4aa;border-top-color:white;border-bottom-color:#b9c9f1;box-shadow:inset 0 1px 1px white,0 1px 2px #7ccaf44d;
}
.lite-home :is(.connect-card,.button-primary,.download-button):after { inset:6px;border:1px solid #ffffffd9;border-radius:calc(var(--glass-radius) - 5px); }
.lite-home .connect-card { padding:31px; }
.lite-pc-card-title { font-size:22px;font-weight:600;letter-spacing:-.7px;color:var(--ink);margin-bottom:25px; }
#join-form>label { display:block;margin:0 0 8px;color:#27476e;font-size:12px;font-weight:600; }
.lite-home input { min-height:49px;background:#fbfeff;border:1px solid #bcd8ee;color:var(--ink);border-radius:12px;font-size:16px;box-shadow:inset 0 1px 3px #3580ba05; }
.lite-home input::placeholder { color:#5d7896;opacity:1; }
.lite-home .code-input { min-height:55px;font-family:ui-monospace,"Cascadia Code",Consolas,monospace;font-size:23px;letter-spacing:.12em; }
.lite-home input:focus { border-color:#45a9eb;box-shadow:0 0 0 3px #75d7ff24; }
.lite-home .field-help { display:block;margin:7px 0 21px;font-size:11px;color:var(--muted); }
.lite-home .button-primary,.lite-home .download-button {
  --glass-radius:15px;
  min-height:54px;margin-top:18px;padding:13px 19px;
  background:linear-gradient(100deg,#c9f3ff,#adeaff 48%,#a8dbff);border-color:#62c5f4;color:var(--ink);font-size:13px;font-weight:650;
  box-shadow:0 7px 13px -9px #2d8bce66,inset 0 0 0 2px #ffffffde,inset 0 0 0 4px #70d5f973;
}
.lite-home :is(.button-primary,.download-button):before { inset:3px;border-color:#c3f9ff;border-bottom-color:#8cbaed; }
.lite-home :is(.button-primary,.download-button):after { inset:5px;border-color:#e8fcffb3; }
.lite-home .lite-consent { color:var(--muted);font-size:11px;line-height:1.7; }
.lite-consent svg { color:#0079d7; }
.lite-home .lite-download { max-width:640px;padding:20px 24px;border:1px solid #bbdfee;border-radius:18px;background:#f8fdff;box-shadow:0 10px 25px -24px #1b6d9d77; }
.lite-home .lite-download summary { color:#386890;font-size:12px;min-height:24px; }
.lite-home .lite-download>p { color:var(--muted);font-size:12px;line-height:1.8; }
.download-caption { color:var(--muted);font-size:11px;line-height:1.7; }
.download-alternative,.media-source-link { color:#0065b6;text-decoration:underline;text-underline-offset:3px; }
.media-source-link { display:block;text-align:center;padding:9px;font-size:11px; }
.form-error { color:#ab2943!important; }

/* Keep the remote image's geometry and pixels intact; theme its surrounding UI. */
.session-heading,.lite-controls { color:var(--ink);background:linear-gradient(120deg,#fbfeff,#eaf7ff);border-color:#c5dfef; }
.session-computer h1 { color:var(--ink); }
.connection-badge { color:#3d6387; }
.status-dot { background:#008bd2;box-shadow:0 0 8px #00a3dc24; }
.connection-badge:is([data-state="waiting"],[data-state="paused"]) .status-dot { background:#ad790b; }
.connection-badge[data-state="ended"] .status-dot { background:#6c8296; }
.button-danger { color:#a42c47;background:#fff0f4;border:1px solid #eabfc9; }
.screen-message { color:var(--ink);background:linear-gradient(145deg,#f8feff,#e5f5ff); }
.screen-message h2 { color:var(--ink); }
.screen-message p { color:var(--muted); }
.message-icon { color:var(--blue);background:#e8f8ff;border-color:#addbf6;box-shadow:inset 0 0 0 2px white; }
.button-secondary { color:var(--ink);background:#edfaff;border:1px solid #a8d6f4; }
.lite-controls .icon-button { color:#35628c; }
.lite-controls .icon-button:hover,.lite-controls .icon-button[aria-pressed="true"] { color:#005fae;background:#d4f0ff; }
.zoom-button { background:#f7fdff;border-color:#b9d9ef; }
.scale-control select { color:#244d74;background:#f8fdff;border-color:#b9d9ef; }
.lite-pc-input-hint,.lite-pc-input-hint svg { color:#486c97; }
.lite-pc-controls .viewer-actions .pc-expand { color:#205b91;background:#edfaff;border-color:#b9d9ef; }
.lite-pc-extras summary { color:#42688e; }
.lite-pc-extras[open] summary,.lite-pc-extras summary:hover { color:#145e9d;background:#dff3ff; }
.lite-pc-extras-menu { background:#f4fcff;border-color:#b7dbf1;box-shadow:0 12px 30px #1c659526; }
.lite-pc-controls .lite-pc-extras-menu .icon-button[aria-pressed="true"] { color:#005fae;background:#d4f0ff; }
.special-keys button { color:#234f79;background:#f7fdff;border-color:#b8d8ee; }
.special-keys button:hover,.special-keys button[aria-pressed="true"] { color:#005fae;background:#d8f2ff; }
.mobile-text { color:#42688e; }
.mobile-text input { color:var(--ink);background:#fcfeff;border-color:#bcd8ee; }
.mobile-text input::placeholder { color:#5d7896; }
#touchpad { background:radial-gradient(ellipse at top,#d5f1ff77,transparent 75%),#eef9ff;border-color:#aad3ed; }
.pad-caption strong { color:#234f79; }
.pad-caption>span,.pad-caption small { color:#486c97; }
.touchpad-buttons button { color:#234f79;background:#f7fdff;border-color:#b8d8ee; }
.touchpad-buttons small { color:#486c97; }
.toast { color:var(--ink);background:#f1fbff;border-color:#a9d8f3;box-shadow:0 8px 25px #166b9c24; }
html[data-connect-theme="glass"] #pc-presentation-dock { color:var(--ink);background:#f1fbfff5;border-color:#b6daf0; }
html[data-connect-theme="glass"] #pc-presentation-dock #touchpad { color:#486c97;background:#eef9ff;border-color:#aad3ed; }
html[data-connect-theme="glass"] #pc-presentation-dock .touchpad-buttons button { color:#234f79;background:#f7fdff;border-color:#b8d8ee; }
html[data-connect-theme="glass"] #pc-presentation-dock .icon-button { color:#35628c; }
html[data-connect-theme="glass"] #pc-presentation-toolbar button { color:#245b89;background:#eef9ff;border-color:#b6d7ee; }
html[data-connect-theme="glass"] #pc-presentation-toolbar button[aria-pressed="true"] { color:#005fae;background:#cef0ff;border-color:#79bce7; }
html[data-relay-prefix="/vps"] .vps-panel h2 { color:var(--ink);font-size:22px;font-weight:600; }
html[data-relay-prefix="/vps"] :is(.vps-panel>p,.vps-footnote,.vps-auth-checking,#vps-owner,#vps-desktop-status) { color:var(--muted); }
html[data-relay-prefix="/vps"] #vps-login-form>label { margin:18px 0 8px;color:#27476e;font-size:12px;font-weight:600; }
html[data-relay-prefix="/vps"] .vps-panel>p { line-height:1.8; }
html[data-relay-prefix="/vps"] #vps-connect { justify-content:center;gap:9px; }

@media(max-width:820px) {
  .site-header { padding-inline:24px; }
  .lite-home { max-width:580px;padding:36px 24px;gap:28px; }
  .hero-copy h1 { font-size:42px; }
}
@media(max-width:500px) {
  .site-header { height:78px;padding:18px 20px;gap:12px; }
  .brand { font-size:21px;gap:8px;letter-spacing:-.8px; }
  .brand img { width:33px;height:33px; }
  .edition-badge { margin-left:3px;font-size:9px;padding:3px 5px; }
  .lite-pc-nav { gap:13px;font-size:11px; }
  .lite-pc-nav .lite-pc-vps-link { padding:9px; }
  .lite-home { padding:28px 20px 30px;gap:28px; }
  .lite-home .connect-card { padding:26px; }
  .lite-pc-card-title { font-size:21px;margin-bottom:24px; }
  .hero-copy h1 { font-size:37px; }
  .lite-home .lite-download { padding:18px; }
}
@media(max-width:380px) {
  .site-header { padding-inline:18px; }
  .lite-pc-nav a[href="/"] { display:none; }
  .lite-home { padding-inline:18px; }
  .lite-home .connect-card { padding:23px; }
  .lite-pc-card-title { font-size:19px; }
  .hero-copy h1 { font-size:33px; }
  .lite-home .code-input { font-size:21px; }
}
@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after { scroll-behavior:auto!important;transition:none!important; }
}
