:root{--ui-ink:#14264e;--ui-muted:#526586;--ui-line:#ccd6ec;--ui-surface:#fff;--ui-radius:10px}.ui-button{white-space:normal;text-align:center;font-size:15px;font-weight:var(--ui-weight-700,700);border-radius:8px;justify-content:center;align-items:center;gap:8px;line-height:1.3;transition:background .15s,border-color .15s;display:inline-flex}.ui-button:focus-visible{outline-offset:3px;outline:3px solid #899cff}.ui-button:disabled{cursor:not-allowed;opacity:.5}.ui-size-default{min-height:44px;padding:10px 16px}.ui-size-sm{min-height:36px;padding:6px 12px;font-size:14px}.ui-size-lg{min-height:48px;padding:12px 20px}.ui-size-icon{width:44px;height:44px;padding:8px}.ui-primary{color:#fff;background:var(--brand-blue);border-color:var(--brand-blue)}.ui-outline{color:var(--ui-ink);border-color:var(--ui-line);background:#fff}.ui-secondary{color:#17318c;background:var(--brand-lime);border-color:#b9d638}.ui-ghost{color:var(--ui-ink);background:0 0;border-color:#0000}.ui-destructive{color:#8c2030;background:#fff0f0;border-color:#f2bdc5}.ui-link{color:var(--brand-blue);background:0 0;border-color:#0000;text-decoration:underline}:is(.workspace-dialog,.session-dialog,.info-dialog,.account-page) .ui-button{min-height:44px;color:var(--ui-ink);background:var(--ui-surface);border:1px solid var(--ui-line);font-size:15px;font-weight:var(--ui-weight-700,700);border-radius:8px;padding:10px 16px}:is(.workspace-dialog,.session-dialog,.info-dialog,.account-page) .ui-button:hover{background:#edf2ff;border-color:#8ca4db}:is(.workspace-dialog,.session-dialog,.info-dialog,.account-page) .ui-primary,:is(.workspace-dialog,.session-dialog) .ui-button.accent{background:var(--brand-blue);color:#fff;border-color:var(--brand-blue)}:is(.workspace-dialog,.session-dialog,.info-dialog,.account-page) .ui-primary:hover{background:#1237c8}:is(.workspace-dialog,.session-dialog,.info-dialog,.account-page) .ui-size-sm{min-height:36px;padding:6px 12px;font-size:14px}:is(.workspace-dialog,.session-dialog,.info-dialog){border:1px solid var(--ui-line);color:var(--ui-ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f7f9ff;border-radius:16px;max-height:calc(100dvh - 40px);padding:28px;font-size:16px;line-height:1.5;overflow:auto;box-shadow:0 24px 90px #03154d66}:is(.workspace-dialog,.session-dialog,.info-dialog)::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#031334aa}.workspace-dialog{width:min(1060px,100vw - 40px)}.session-dialog{width:min(760px,100vw - 40px)}:is(.workspace-dialog,.session-dialog)>.pane-heading{z-index:3;border-bottom:1px solid var(--ui-line);background:#f7f9ff;justify-content:space-between;align-items:center;gap:16px;margin:-28px -28px 24px;padding:20px 28px;display:flex;position:sticky;top:-28px}:is(.workspace-dialog,.session-dialog)>.pane-heading h2{font-size:28px;line-height:1.2;font-weight:var(--ui-weight-800,800);color:#173ca5;margin:0}:is(.workspace-dialog,.session-dialog)>.pane-heading button{flex-shrink:0}.workspace-tabs{border:1px solid var(--ui-line);background:#e9effb;border-radius:12px;gap:8px;margin-bottom:24px;padding:6px;display:flex}.workspace-tabs .ui-button{background:0 0;border-color:#0000;flex:1}.workspace-dialog .workspace-tabs .ui-button[aria-pressed=true]{color:#122f81;background:var(--brand-lime);border-color:#b9d638;box-shadow:0 2px 5px #142d7110}.workspace-dialog .workspace-grid,.workspace-dialog .spawn-settings{gap:18px 20px}.workspace-dialog :is(.workspace-grid,.spawn-settings)>label{flex-direction:column;gap:7px;min-width:0;margin:0;font-size:15px;display:flex}.workspace-dialog label.toggle{flex-direction:row;align-items:center;gap:10px}:is(.workspace-dialog,.session-dialog) :is(input:not([type=checkbox]),select,textarea){width:100%;min-width:0;color:var(--ui-ink);min-height:44px;font:inherit;background:#fff;border:1px solid #aabbdc;border-radius:8px;padding:10px 12px;font-size:15px}:is(.workspace-dialog,.session-dialog) :is(input,select,textarea):focus-visible{outline-offset:2px;outline:3px solid #b0c4ff}:is(.workspace-dialog,.session-dialog) input[type=checkbox]{width:18px;height:18px;min-height:0;accent-color:var(--brand-blue);flex-shrink:0}.workspace-dialog .workspace-result{border:1px solid var(--ui-line);border-radius:12px;margin:22px 0;padding:24px}.workspace-dialog .note,.session-dialog .note{color:var(--ui-muted);font-size:14px;line-height:1.5}.workspace-dialog .section-intro{margin:16px 0}.workspace-dialog .section-intro h3,.workspace-dialog .workspace-result h3{font-size:21px;line-height:1.3}.workspace-dialog .control-label{flex-direction:column;align-items:stretch;gap:8px;margin:18px 0;font-size:15px;display:flex}.workspace-dialog .sdf-field{grid-template-columns:1fr auto;width:100%;display:grid}.workspace-dialog .sdf-editor{resize:vertical;tab-size:2;grid-column:1/-1;width:100%;max-width:none;min-height:360px;margin:0;font:14px/1.7 ui-monospace,SFMono-Regular,monospace;display:block}.competition-options{border:1px solid var(--ui-line);background:#f4f7fe;border-radius:10px;grid-column:1/-1;padding:16px}.competition-options summary{cursor:pointer;font-size:15px;font-weight:var(--ui-weight-700,700)}.center-map-section{border:1px solid var(--ui-line);background:#fff;border-radius:12px;grid-column:1/-1;width:100%;min-width:0;overflow:hidden}.center-map-heading{font-size:15px;font-weight:var(--ui-weight-700,700);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.center-map{width:100%;height:280px}.center-map-section .note{margin:0;padding:10px 16px}.center-map .maplibregl-ctrl button{background:#fff;border-radius:0;min-height:30px;padding:0}.account-page .beta-card{border-radius:20px;max-width:920px;padding:32px}.account-welcome{margin:28px 0 20px}.account-welcome h2{font-size:28px;font-weight:var(--ui-weight-800,800);letter-spacing:-.02em;margin:0 0 8px}.account-welcome .account-email{margin:0 0 18px}.web-runtime-note{border-left:4px solid var(--brand-blue);color:#314b7a;background:#eaf0ff;border-radius:0 10px 10px 0;padding:16px 18px;font-size:15px;line-height:1.6}.web-runtime-note a{font-weight:var(--ui-weight-700,700);color:#1642ba;text-underline-offset:3px;display:inline}.account-start{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 16px;display:grid}.account-page .account-start>button{width:100%;min-height:48px;font-size:16px;font-weight:var(--ui-weight-700,700);padding:12px 16px}.account-page .account-start>button:first-child{background:var(--brand-lime);color:#17318c;border-color:#b9d638}.account-workspace-help{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px;display:flex}.account-workspace-help>a{color:#173ca5;font-size:15px;font-weight:var(--ui-weight-700,700)}.account-build{border-top:1px solid var(--ui-line);padding-top:16px}.session-dialog .beta-panel{flex-direction:column;gap:16px;padding:0;display:flex}.session-dialog .beta-panel>p{margin:0}.session-dialog .beta-panel>.info-button{align-self:flex-start}.session-dialog .button-row{flex-wrap:wrap;gap:12px;display:flex}.session-dialog .beta-panel>details{border-top:1px solid var(--ui-line);margin-top:4px;padding-top:18px}.session-dialog summary{font-size:18px;font-weight:var(--ui-weight-750,750);color:#173ca5;cursor:pointer}.session-dialog .account-panel form{gap:16px;margin-top:20px;display:grid}.session-dialog .usage-request-form{grid-template-columns:1fr 1fr}.session-dialog label{font-size:15px;font-weight:var(--ui-weight-700,700);flex-direction:column;gap:8px;display:flex}.session-dialog .verify-box{background:#edf2ff;border-radius:12px;gap:12px;padding:16px;display:grid}.session-dialog .verify-box strong{font-size:16px}.session-dialog .account-help{gap:12px}.session-dialog .usage-request-row{border:1px solid var(--ui-line);overflow-wrap:anywhere;background:#fff;border-radius:12px;flex-direction:column;gap:8px;margin:16px 0;padding:16px;display:flex}.session-dialog .usage-request-row>p{margin:0}.session-dialog .beta-user{border:1px solid var(--ui-line);border-radius:12px;margin:18px 0;padding:20px}.session-dialog :is(.beta-user,.coupon-admin){gap:12px;display:grid}.session-dialog .error{color:#a4243c}.login-auth-links{flex-wrap:wrap;gap:8px 24px;margin:18px 0 16px;display:flex}.login-auth-dialog .login-auth-links .login-switch{min-height:42px;margin:0}.login-verification{gap:14px;display:grid}.login-verification p{margin:0;line-height:1.6}.account-navigation{flex-wrap:wrap;gap:12px;margin:16px 0;display:flex}.workspace-dialog .workspace-navigation{flex-wrap:wrap;flex-shrink:0;gap:10px;margin:0 22px 14px;display:flex}.workspace-dialog .workspace-setup-note{color:#edf3ff;flex-shrink:0;margin:0 22px 14px;font-size:14px;line-height:1.5}.login-auth-dialog .info-button{color:#fff;background:#ffffff12;border-color:#ffffff70;min-height:40px;margin-top:0;padding:10px 14px;font-size:14px;display:block}.login-auth-dialog .info-button:hover{background:#ffffff25}.engineering-info-anchor{white-space:nowrap}.login-page .login-intro .info-icon{vertical-align:middle;width:20px;min-width:20px;height:20px;min-height:20px;color:var(--brand-lime);background:0 0;border:1px solid #ffffff60;border-radius:50%;margin-inline:3px 2px;padding:1px;display:inline-flex;position:relative;top:-2px}.login-page .login-intro .info-icon:hover{color:#12318d;background:var(--brand-lime);border-color:var(--brand-lime)}.login-page .login-intro .info-icon:focus-visible{outline:3px solid var(--brand-coral);outline-offset:3px}.platform-beta-badge{vertical-align:middle;background:var(--brand-lime);color:#12318d;font-size:11px;font-weight:var(--ui-weight-900,900);letter-spacing:.07em;border-radius:4px;align-items:center;margin-right:5px;padding:3px 6px;line-height:1.2;display:inline-flex}.login-actions .login-language{flex-direction:column;align-items:flex-start;gap:8px;width:100%;max-width:100%;margin-top:14px;display:flex;position:static}.deployment-info{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:11px;font-weight:500;line-height:1.5;display:flex}.login-language .deployment-info{color:#e0e8ff}.account-build .deployment-info{color:var(--ui-muted)}@media (min-width:961px){.login-actions{max-height:var(--login-rail-height,calc(100dvh - 290px));padding-top:2px;overflow:auto}.login-actions .login-form-content{max-width:460px}.login-page{padding-bottom:12px}}@media (min-width:961px) and (max-height:850px){.login-actions .login-intro{margin-bottom:10px;font-size:13px;line-height:1.6}.login-action-plan{margin-bottom:8px;font-size:26px}.login-eyebrow{margin-bottom:8px;font-size:11px}.login-page .login-signin-action{height:calc(.8em + 12.8px);min-height:33.6px;padding:0 14px;font-size:26px}.login-page .login-register-action{height:calc(1em + 12.8px);min-height:30.4px;margin-top:7px;padding:0 14px;font-size:17px}.login-primary-links{gap:6px;margin-top:8px}.login-primary-links a{min-height:38px;padding:8px;font-size:13px}.login-voyage-link{margin-top:10px;padding-top:10px}.login-page .login-live-entry{min-height:34px;padding:4px 0;font-size:14px}.login-leaderboard-link{margin-top:8px;padding-top:7px}.login-secondary-links{gap:8px;margin-top:10px}.login-secondary-links a,.login-page .login-leaderboard-link .leaderboard-button{font-size:12px}}@media (max-width:960px){.login-language{flex-wrap:wrap;gap:8px 12px;max-width:100%}.deployment-info{gap:3px 8px;font-size:10px}}@media (max-width:600px){.account-page .beta-card{padding:22px 18px}.account-start{grid-template-columns:1fr;gap:10px}.account-welcome h2{font-size:25px}:is(.workspace-dialog,.session-dialog,.info-dialog){border-radius:12px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:18px}:is(.workspace-dialog,.session-dialog)>.pane-heading{margin:-18px -18px 20px;padding:16px 18px;top:-18px}:is(.workspace-dialog,.session-dialog)>.pane-heading h2{font-size:24px}.workspace-tabs{grid-template-columns:1fr 1fr;display:grid}.workspace-tabs .ui-button{min-height:40px;padding:8px;font-size:14px}.workspace-dialog .workspace-grid,.workspace-dialog .spawn-settings,.session-dialog .usage-request-form{grid-template-columns:1fr;gap:16px}.workspace-dialog .sdf-editor{font-size:13px}.center-map{height:240px}}@media (min-width:961px) and (max-height:850px){.login-page{grid-template-columns:minmax(340px,3.3fr) minmax(0,6.7fr);gap:18px 24px}.login-actions{padding-right:0}.login-page .login-signin-action{line-height:1}.login-action-plan{font-size:24px;line-height:1.1}.login-actions .login-intro{line-height:1.6}.login-eyebrow{margin-bottom:6px}.login-page .login-live-entry svg{width:36px;height:24px}.login-page .login-live-entry{line-height:1.15}.login-secondary-links{margin-top:8px}}@media (min-width:961px) and (max-height:680px){.login-page{gap:12px 24px;padding-top:14px}.login-eyebrow{display:none}.login-action-plan{margin-bottom:8px;font-size:22px}.login-actions .login-intro{margin-bottom:9px;font-size:12.5px}.login-page .login-signin-action{height:calc(.8em + 11.2px);min-height:30.4px;padding:0 12px;font-size:24px}.login-page .login-register-action{height:calc(1em + 11.2px);min-height:27.2px;padding:0 12px;font-size:16px}.login-primary-links a{min-height:34px;font-size:13px}}@media (min-width:961px) and (max-height:850px){.login-actions .login-intro{max-width:none}.login-leaderboard-link{justify-content:center;line-height:1;display:flex}.login-page{grid-template-columns:minmax(380px,3.3fr) minmax(0,6.7fr)}.login-page .login-leaderboard-link .leaderboard-button{margin:0}.login-leaderboard-link{margin-top:6px;padding-top:5px}.login-voyage-link{margin-top:8px;padding-top:6px}.login-secondary-links{margin-top:6px}}@media (min-width:600px) and (max-width:1366px){.login-page{overflow-anchor:none}}@media (min-width:961px) and (max-width:1366px){.login-page{grid-template-columns:clamp(244px,24vw,300px) minmax(0,1fr);gap:18px;padding-inline:20px}.login-actions{min-width:0;padding-right:0}.login-actions .login-form-content{min-width:0;max-width:none}.login-eyebrow{margin-bottom:8px;font-size:11px;display:flex}.login-action-plan{white-space:normal;font-size:24px}.login-actions .login-intro{font-size:14px;line-height:1.5}.login-primary-links{grid-template-columns:1fr}.login-primary-links a{min-height:38px}.login-secondary-links{flex-wrap:wrap}}@media (min-width:961px) and (max-width:1366px) and (max-height:680px){.login-actions .login-intro{font-size:12.5px;line-height:1.5}}.session-dialog,.workspace-dialog{max-width:calc(100vw - 24px);margin:auto;position:fixed;inset:0}.session-dialog :is(button,.button){color:#14264e;white-space:normal;background:#fff;border-color:#aabbdc}.session-dialog :is(button,.button):disabled{color:#526586;opacity:1;background:#e8ecf4}.session-dialog .danger{color:#842819;background:#ffe5df}.workspace-status{z-index:4;background:#f7f9ff;margin-bottom:14px;padding:8px 0 14px;position:sticky;top:51px}.ui-alert{color:#14264e;overflow-wrap:anywhere;background:#eaf0ff;border:1px solid #b4c7ee;border-radius:10px;padding:14px 16px}.ui-alert-title{font-size:16px;font-weight:var(--ui-weight-750,750);margin:0 0 4px;line-height:1.4}.ui-alert-description{font-size:14px;line-height:1.5}.ui-alert-destructive{color:#842819;background:#fff0ed;border-color:#e8aaa0}.ui-progress{background:#c8d4f3;border-radius:6px;height:6px;margin-top:10px;position:relative;overflow:hidden}.ui-progress-indicator{background:#1642ed;width:100%;height:100%;transition:transform .2s}.ui-progress-indicator.indeterminate{width:35%;animation:1.4s ease-in-out infinite workspace-progress}@keyframes workspace-progress{0%{transform:translate(-100%)}to{transform:translate(386%)}}.verification-page{background:#1642ed;flex-direction:column;justify-content:center;align-items:center;gap:36px;min-height:100dvh;padding:48px;display:flex}.verification-page>.platform-title{width:min(100%,1000px)}.verification-card{color:#14264e;background:#fff;border-radius:18px;flex-direction:column;gap:18px;width:min(600px,100%);padding:28px;display:flex}.password-reset-card{width:min(460px,100%)}.password-reset-card form{flex-direction:column;gap:18px;display:flex}.password-reset-card label{flex-direction:column;gap:8px;font-weight:650;display:flex}.password-reset-card input{color:#14264e;background:#f4f7ff;border:1px solid #7890b8;border-radius:8px;width:100%;min-height:44px;padding:10px 12px;font-size:16px}.auth-notice{color:#214321;background:#ebf6d5;border-radius:8px;padding:12px 14px;line-height:1.5}.workbench .ui-button{color:#f5f8ff;background:#16345e;border-color:#809dcc;min-height:36px;padding:8px 12px;font-size:14px}.workbench .ui-button.accent,.workbench .ui-button[aria-pressed=true]{color:#132b56;background:#d7fa45;border-color:#c4e937}@media (max-width:600px){.workspace-status{padding-bottom:8px;top:43px}.verification-page{padding:22px}.verification-card{padding:20px}.ui-alert{padding:12px}}@media (prefers-reduced-motion:reduce){.ui-progress-indicator.indeterminate{opacity:.6;width:100%;animation:none}}.workspace-activity{z-index:40;border-radius:10px;width:min(520px,100vw - 28px);position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #03154d44}.activity-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.activity-heading button{flex-shrink:0}.workspace-scan{background:#142747;border:1px solid #526688;border-radius:12px;margin:12px 0;padding:12px}.workspace-scan svg{width:100%;height:220px;display:block}.workspace-scan figcaption{text-align:center;color:#edf2ff;font-size:13px}.workbench .map-navigation .ui-button{width:32px;height:32px;min-height:32px;padding:0;font-size:20px;line-height:1}.workspace-dialog,.dark-workspace-help{--ui-ink:#edf3ff;--ui-muted:#a4b4d0;--ui-line:#34455f;--ui-surface:#18273d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--ui-ink);background:#101b2c}.workspace-dialog[open]{flex-direction:column;width:min(720px,100vw - 32px);max-height:calc(100dvh - 32px);padding:0;display:flex;overflow:hidden}.workspace-dialog>.pane-heading{border-bottom:1px solid var(--ui-line);background:#142136;flex-shrink:0;margin:0;padding:16px 22px;position:static}.workspace-dialog>.pane-heading h2{color:#fff;font-size:24px}.workspace-dialog .workspace-status{z-index:auto;background:#101b2c;flex-shrink:0;margin:0;padding:12px 22px;position:static}.workspace-dialog .ui-alert{color:#edf3ff;background:#18273d;border:1px solid #34455f;margin:0;padding:12px 14px}.workspace-dialog .ui-alert-title{color:#d7fa45;margin:0 0 3px;font-size:15px}.workspace-dialog .ui-alert-description{color:#c1cde1;overflow-wrap:anywhere;font-size:13px;line-height:1.4}.workspace-elapsed{font-variant-numeric:tabular-nums;margin-top:6px;display:block}.workspace-dialog .competition-practice-preset{color:#edf3ff;background:#18273d;border-color:#425675;padding:18px}.workspace-dialog .competition-practice-preset h4{color:#d7fa45;font-size:16px;line-height:1.4}.workspace-dialog .competition-practice-preset .note{color:#c1cde1;margin:8px 0 14px;line-height:1.6}.workspace-dialog .ui-progress{background:#34455f}.workspace-dialog .ui-progress-indicator{background:#d7fa45}.workspace-dialog .ui-alert-destructive{background:#422132;border-color:#a9586b}.workspace-dialog .ui-alert-destructive .ui-alert-title{color:#ffb8bb}.workspace-dialog .ui-progress{background:#34455f;margin-top:9px}.workspace-dialog .workspace-tabs{border-color:var(--ui-line);background:#18273d;flex-shrink:0;gap:4px;margin:0 22px 12px;padding:4px}.workspace-dialog .workspace-tabs .ui-button{min-height:38px;padding:7px 10px}.workspace-dialog .workspace-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:0 22px 20px;overflow:auto}.workspace-dialog :is(.ui-button,.button){color:#edf3ff;background:#18273d;border-color:#425573;border-radius:8px;min-height:40px;padding:9px 14px;font-size:14px;line-height:1.3}.workspace-dialog :is(.ui-button,.button):hover{background:#263953;border-color:#7085a5}.workspace-dialog :is(.ui-primary,.ui-button.accent){color:#112644;background:#d7fa45;border-color:#d7fa45}.workspace-dialog :is(.ui-primary,.ui-button.accent):hover{color:#112644;background:#e3ff77}.workspace-dialog .ui-button:disabled{opacity:.4}.workspace-dialog :is(input:not([type=checkbox]),select,textarea){color:#edf3ff;background:#0c1729;border:1px solid #425573;height:40px;min-height:40px;padding:8px 11px;font-size:14px}.workspace-dialog :is(input,select,textarea):focus-visible{outline-color:#d7fa45}.workspace-dialog input[type=checkbox]{accent-color:#d7fa45}.workspace-dialog .workspace-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 14px;display:grid}.workspace-steps .ui-button{justify-content:flex-start;gap:9px}.workspace-steps .ui-button>span{color:#c7d4ea;background:#2c405d;border-radius:50%;flex-shrink:0;place-items:center;width:23px;height:23px;font-size:12px;display:grid}.workspace-steps .ui-button[aria-current=step]{color:#d7fa45;border-color:#d7fa45}.workspace-steps .ui-button[aria-current=step]>span{color:#14264e;background:#d7fa45}.workspace-dialog .section-intro{justify-content:space-between;align-items:center;gap:10px;margin:10px 0;display:flex}.workspace-dialog :is(.section-intro h3,.workspace-result h3){color:#edf3ff;margin:6px 0 12px;font-size:18px}.workspace-dialog .step-label{display:none}.workspace-dialog .workspace-grid,.workspace-dialog .spawn-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.workspace-dialog :is(.workspace-grid,.spawn-settings)>label{gap:5px;font-size:14px}.workspace-dialog .control-mode-field{flex-direction:column;gap:5px;min-width:0;font-size:14px;display:flex}.workspace-dialog .control-mode-input{align-items:center;gap:6px;width:100%;min-width:0;display:flex}.workspace-dialog .control-mode-input>select{flex:1 1 0;width:0;min-width:0}.workspace-dialog .control-mode-input>.info-icon{flex:0 0 36px;width:36px;min-width:36px;height:36px;min-height:36px;margin:0;padding:6px}.workspace-dialog .control-label{gap:6px;margin:10px 0;font-size:14px}.workspace-dialog .workspace-result{background:#142136;border-color:#34455f;margin:0;padding:16px}.workspace-dialog .workspace-result>p:first-child{display:none}.workspace-dialog .workspace-result[hidden],.workspace-dialog [hidden]{display:none!important}.workspace-dialog .workspace-step-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.workspace-dialog .workspace-step-actions .ui-button{min-width:112px}.workspace-dialog .workspace-confirmation{grid-template-columns:140px minmax(0,1fr);gap:12px 16px;margin:12px 0 20px;font-size:14px;display:grid}.workspace-confirmation dt{color:#a4b4d0}.workspace-confirmation dd{color:#fff;overflow-wrap:anywhere;margin:0;font-weight:600}.workspace-dialog .center-map-section{background:#142136;border-color:#34455f}.workspace-dialog .center-map-heading{color:#edf3ff;gap:8px;padding:10px 12px;font-size:14px}.center-map-heading small{color:#a4b4d0;font-size:12px;font-weight:500;display:block}.workspace-dialog .center-map-heading .button-row{flex-wrap:nowrap;gap:6px;display:flex}.workspace-dialog .center-map-heading .ui-button{min-height:34px;padding:7px 10px;font-size:12px}.workspace-dialog .center-map{height:190px}.workspace-dialog .center-map-section .note{padding:6px 12px;font-size:12px}.workspace-dialog .competition-options{background:#18273d;border-color:#34455f;padding:12px}.workspace-dialog .competition-options summary{color:#edf3ff;font-size:14px}.workspace-dialog .sdf-editor{height:auto;min-height:260px;font-size:13px}.workspace-dialog .info-icon,.dark-workspace-help .info-icon{background:0 0;border-radius:50%;width:36px;min-width:36px;height:36px;min-height:36px;padding:7px}.dark-workspace-help .pane-heading h2{color:#edf3ff}.dark-workspace-help .ui-button{color:#edf3ff;background:#18273d;border-color:#425573}.dark-workspace-help :is(p,a){color:#c1cde1}@media (max-width:600px){.workspace-dialog[open]{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.workspace-dialog>.pane-heading{padding:12px 14px}.workspace-dialog>.pane-heading h2{font-size:21px}.workspace-dialog .workspace-status{padding:8px 14px}.workspace-dialog .workspace-tabs{flex-wrap:wrap;margin:0 14px 10px;display:flex}.workspace-dialog .workspace-tabs .ui-button{flex:calc(50% - 4px);font-size:12px}.workspace-dialog .workspace-scroll{padding:0 14px 16px}.workspace-dialog .workspace-steps{gap:5px}.workspace-steps .ui-button{gap:5px;min-height:44px;padding:7px;font-size:12px}.workspace-steps .ui-button>span{width:20px;height:20px}.workspace-dialog .workspace-grid,.workspace-dialog .spawn-settings{grid-template-columns:1fr 1fr;gap:10px}.workspace-dialog .workspace-confirmation{grid-template-columns:100px minmax(0,1fr);gap:10px}.workspace-dialog .center-map{height:160px}.workspace-dialog .center-map-heading{align-items:flex-start}.workspace-dialog .workspace-step-actions .ui-button{min-height:44px}}.workspace-dialog .ui-button:disabled{color:#8d9eb9;opacity:.72;background:#18273d;border-color:#34455f}.workspace-dialog .ui-button.ui-primary:disabled{color:#95a6ba;background:#253446}.workspace-dialog .workspace-tabs{margin-top:16px}.workspace-dialog .control-label{flex-direction:column;align-items:stretch;min-width:0;display:flex}.workspace-dialog .upload-policy{color:#edf3ff;background:#25351d;border-color:#d7fa45}.workspace-dialog .upload-policy a{color:#d7fa45}.workspace-dialog input[type=file]{width:100%;min-width:0;max-width:100%;height:auto;min-height:48px;padding:6px;overflow:hidden}.workspace-dialog input[type=file]::file-selector-button{color:#112644;background:#d7fa45;max-width:100%;margin-right:8px}.workspace-dialog :is(.note,.muted){color:#b9c9e2}.workspace-dialog .storage-totals{color:#edf3ff;background:#18273d;border-color:#34455f}.workspace-dialog .storage-pane>.muted,.workspace-dialog .rviz-profile-download{margin-top:20px}.workspace-command{margin-top:16px}.workspace-command>.ui-button{margin-bottom:8px;margin-left:auto;display:flex}.workspace-dialog .workspace-command .raw-data{color:#edf3ff;background:#0c1729;border-color:#425573;margin:0}.sdf-summary{min-width:0;margin:20px 0}.sdf-preview{box-sizing:border-box;color:#edf3ff;white-space:pre-wrap;overflow-wrap:anywhere;background:#0c1729;border:1px solid #425573;border-radius:8px;width:100%;min-height:180px;max-height:240px;margin:0;padding:14px;font:14px/1.6 ui-monospace,monospace;overflow:auto}.sdf-editor-dialog{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#edf3ff;box-sizing:border-box;background:#101b2c;border:1px solid #425573;border-radius:16px;width:min(1100px,100vw - 32px);max-height:calc(100dvh - 32px);padding:20px}.sdf-editor-dialog[open]{flex-direction:column;gap:16px;display:flex}.sdf-editor-dialog .pane-heading{flex-shrink:0;margin:0}.sdf-editor-dialog h2{color:#edf3ff;margin:0}.sdf-editor-dialog .sdf-editor{box-sizing:border-box;resize:none;color:#edf3ff;tab-size:2;background:#0c1729;border-color:#425573;width:100%;max-width:none;height:60dvh;min-height:220px;margin:0;padding:16px;font:15px/1.7 ui-monospace,monospace}.sdf-editor-dialog .button-row{flex-shrink:0;justify-content:flex-end;margin:0}.sdf-editor-dialog::backdrop{background:#030916aa}@media (max-width:600px){.workspace-dialog .workspace-tabs{margin-top:12px}.sdf-editor-dialog{width:calc(100vw - 16px);padding:14px}.sdf-editor-dialog h2{font-size:20px}.sdf-editor-dialog .sdf-editor{padding:10px;font-size:14px}}.sdf-editor-dialog .ui-button{color:#edf3ff;background:#18273d;border-color:#425573}.sdf-editor-dialog .ui-primary{color:#112644;background:#d7fa45;border-color:#d7fa45}@media (min-width:961px){:is(html:has(.login-page),body:has(.login-page)){height:100dvh;overflow:hidden}.login-page{grid-template-rows:auto minmax(0,1fr);height:100dvh;min-height:0;max-height:100dvh;overflow:hidden}.login-page .login-feature{align-self:stretch;height:100%;min-height:0}.login-page .login-actions{overscroll-behavior:contain;height:100%;min-height:0;max-height:100%;overflow:auto}}
.dev-mark{z-index:10000;pointer-events:none;color:#243247;letter-spacing:1px;background:#ffd85a;border:1px solid #7e6328;border-radius:5px;padding:2px 7px;font:800 11px/1.3 system-ui,sans-serif;position:fixed;top:8px;left:50%;transform:translate(-50%);box-shadow:0 1px 5px #0004}html[data-environment=dev] :is(.viewport,.promo-native-stage,.promo-camera,.camera-image,.promo-world-map,.promo-mini-map,.preview-media,.login-preview):after{content:"DEV";z-index:30;pointer-events:none;color:#ffe06c;letter-spacing:1px;background:#243247b3;border:1px solid #ffe06c80;border-radius:4px;padding:2px 6px;font:800 11px/1.3 system-ui,sans-serif;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}html[data-environment=dev] :fullscreen:after{content:"DEV";z-index:10000;pointer-events:none;color:#243247;letter-spacing:1px;background:#ffd85a;border-radius:4px;padding:2px 6px;font:800 11px/1.3 system-ui,sans-serif;position:fixed;bottom:12px;left:50%;transform:translate(-50%)}
.workbench{--workspace-inset:16px;--workspace-gap:12px;--workspace-panel-width:clamp(296px, 23vw, 336px);--workspace-panels-top:96px;--workspace-joystick-height:256px;--workspace-surface:#0f172af0;--workspace-card:#162238;--workspace-border:#33445d;--workspace-muted:#a8b8ce;color:#edf3fc;font-size:14px;line-height:1.5}.workbench .glass{background:var(--workspace-surface);border-color:var(--workspace-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;box-shadow:0 12px 36px #02061738}.workbench .topbar{inset:var(--workspace-inset) var(--workspace-inset) auto;gap:16px;min-height:64px;padding:12px 16px}.workbench .brand h1{letter-spacing:-.02em;font-size:17px;font-weight:700;line-height:1.25}.workbench .brand p{color:var(--workspace-muted);margin-top:3px;font-size:11px;font-weight:500;line-height:1.5}.workbench .brand-mark{border-radius:9px;width:36px;height:36px;font-size:20px}.workbench .top-actions{gap:8px}.workbench .top-actions>.status{border:1px solid var(--workspace-border);white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:12px}.workbench .view-toolbar{top:var(--workspace-panels-top);border-radius:10px;padding:4px}.workbench .view-toolbar .button-row{gap:4px}.workbench :is(.left-pane,.right-pane){top:var(--workspace-panels-top);width:var(--workspace-panel-width);max-height:calc(100dvh - var(--workspace-panels-top) - 24px)}.workbench .left-pane{left:var(--workspace-inset)}.workbench .right-pane{right:var(--workspace-inset)}.workbench.with-joystick .left-pane{max-height:calc(100dvh - var(--workspace-panels-top) - var(--workspace-joystick-height) - 32px)}.workbench .panel-heading{border-bottom:1px solid var(--workspace-border);background:#17243a;min-height:48px;padding:10px 12px}.workbench .panel-heading h2{margin:0;font-size:13px;font-weight:650}.workbench .pane-tabs{border-bottom-color:var(--workspace-border);background:#101a2c;border-radius:0;gap:4px;padding:6px 8px}.workbench .pane-content{padding:14px}.workbench .right-pane .pane-content{flex-direction:column;gap:12px;display:flex}.workbench :is(.left-pane,.right-pane,.joystick-pane,.ground-control,.view-toolbar) .ui-button,.workbench .top-actions>.ui-button{color:#edf3fc;text-wrap:balance;background:#1c2d47;border-color:#425675;border-radius:8px;min-height:36px;padding:8px 12px;font-size:13px;font-weight:600;line-height:1.35}.workbench :is(.left-pane,.right-pane,.joystick-pane,.ground-control,.view-toolbar) .ui-button:hover:not(:disabled),.workbench .top-actions>.ui-button:hover:not(:disabled){background:#2a4163;border-color:#6c86ac}.workbench :is(.left-pane,.right-pane,.joystick-pane,.ground-control,.view-toolbar) .ui-button:is(.accent,.active,.selected),.workbench .top-actions>.ui-button.active{background:var(--brand-lime);color:#1c304d;border-color:#c4df45}.workbench :is(.left-pane,.right-pane,.joystick-pane,.ground-control) .ui-button.danger{color:#ffd4da;background:#472b36;border-color:#9c5062}.workbench :is(.left-pane,.right-pane,.joystick-pane,.ground-control) .ui-button.danger:hover:not(:disabled){background:#613344;border-color:#cf718b}.workbench :is(.left-pane,.right-pane,.joystick-pane,.ground-control,.view-toolbar) .ui-button:disabled{color:#8fa1bb;background:#19263b;border-color:#34445d}.workbench .panel-heading .ui-button{background:0 0;width:28px;min-width:28px;height:28px;min-height:28px;padding:0;font-size:18px}.workbench .pane-tabs .ui-button{flex:1;min-height:34px;padding:7px 5px;font-size:12px}.workbench .top-actions>select{background:#17243a;border-color:#425675;border-radius:8px;min-height:36px;padding:7px 10px;font-size:13px}.workbench :is(.left-pane,.right-pane,.joystick-pane) :is(input:not([type=checkbox]):not([type=range]),select,textarea){background:#0f1a2c;border-color:#425675;border-radius:7px;min-height:36px;padding:7px 10px;font-size:13px;line-height:1.4}.workbench :is(.left-pane,.right-pane) :is(h2,h3){word-break:keep-all;font-weight:650;line-height:1.4}.workbench :is(.left-pane,.right-pane) h2{font-size:15px}.workbench :is(.left-pane,.right-pane) h3{margin:16px 0 10px;font-size:13px}.workbench :is(.left-pane,.right-pane) :is(p,label,summary){word-break:keep-all}.workbench :is(.left-pane,.right-pane) :is(.mono,code,small){overflow-wrap:anywhere;word-break:normal}.workbench .note{margin-top:10px;font-size:12px;line-height:1.6}.workbench .muted{color:var(--workspace-muted)}.workbench .control-label{gap:8px;margin:12px 0;font-size:13px;font-weight:500}.workbench .control-label>select{max-width:55%}.workbench .toggle{gap:10px;min-height:34px;margin:4px 0;font-size:13px;font-weight:500}.workbench .toggle>input[type=checkbox]{width:16px;height:16px}.workbench .scene-item{background:#182c43;border-color:#3d5773;margin:12px 0;padding:12px;font-size:13px}.workbench .scene-item>span{font-size:11px}.workbench .scene-context{color:var(--workspace-muted);font-size:12px}.workbench .badge{letter-spacing:.03em;background:#1b2b43;border-color:#425675;border-radius:6px;align-items:center;padding:4px 6px;font-size:10px;font-weight:600;line-height:1.3;display:inline-flex}.workbench .ui-card{background:var(--workspace-card);border:1px solid var(--workspace-border);border-radius:10px;overflow:hidden}.workbench .ui-card-header{flex-direction:column;gap:6px;padding:14px 14px 0;display:flex}.workbench .ui-card-header.pane-heading{flex-direction:row;align-items:center;margin-bottom:0}.workbench .ui-card-content{padding:14px}.workbench .ui-card-header+.ui-card-content{padding-top:12px}.workbench h3.ui-card-title{margin:0;font-size:15px;font-weight:650}.workbench .ui-card-description{color:var(--workspace-muted);font-size:12px;line-height:1.6}.workbench .ui-card-content>:first-child{margin-top:0}.workbench .ui-card-content>:last-child{margin-bottom:0}.workbench .flight-mode{background:#102039;border-color:#344960;margin:12px 0;padding:10px 12px}.workbench .flight-mode span{font-size:12px;font-weight:500}.workbench .flight-mode strong{font-size:13px}.workbench .telemetry-grid{grid-template-columns:minmax(0,1fr);gap:10px;margin:14px 0}.workbench :is(.telemetry-grid,.pose-grid) span{color:var(--workspace-muted);font-size:11px;font-weight:500}.workbench :is(.telemetry-grid,.pose-grid) strong{font-variant-numeric:tabular-nums;font-size:14px;font-weight:600;line-height:1.5}.workbench .telemetry-grid strong{overflow-wrap:anywhere}.workbench .control-state{flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.workbench .control-status{background:#203654;border:1px solid #405d81;border-radius:999px;padding:4px 8px;font-weight:600}.workbench .control-actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,144px),1fr));gap:8px;margin-top:14px;display:grid}.workbench .control-actions>.ui-button{word-break:keep-all;min-width:0}.workbench .control-card .controller-link{color:#bed2f3;text-align:left;background:0 0;border-color:#0000;justify-content:space-between;width:100%;margin-top:8px}.workbench .control-diagnostics{border-top:1px solid var(--workspace-border);margin-top:10px;padding-top:8px}.workbench .control-diagnostics summary{font-size:12px;font-weight:500}.workbench .sensor-tree details>summary{color:var(--workspace-muted);padding:8px 0;font:11px/1.5 ui-monospace,monospace}.workbench .sensor-tree .ui-button{text-align:left;align-items:flex-start;width:100%;margin:4px 0;padding:10px}.workbench .sensor-tree .ui-button span{font-size:13px;font-weight:600}.workbench .sensor-tree .ui-button small{opacity:.85;margin-top:3px;font:11px/1.5 ui-monospace,monospace}.workbench .instrument-card .flight-instrument{margin:0 auto 12px}.workbench .mission-card h3{margin-top:0}.workbench .joystick-pane{left:var(--workspace-inset);bottom:var(--workspace-inset);width:var(--workspace-panel-width);max-height:var(--workspace-joystick-height);padding:12px;overflow:auto}.workbench .joystick-pane .pane-heading{margin-bottom:8px}.workbench .joystick-pane h2{font-size:14px}.workbench .joystick-pane .pads{gap:12px;margin:0}.workbench .joystick-pad{width:82px;height:82px}.workbench .pad-label{margin-bottom:6px;font-size:11px;line-height:16px}.workbench .joystick-pane .control-label{margin:8px 0}.workbench .joystick-pane .note{margin-top:8px;font-size:11px;line-height:1.5}.workbench.panels-open .compass-stack{left:calc(var(--workspace-inset) + var(--workspace-panel-width) + var(--workspace-gap));width:150px;top:154px}.workbench .wall-clock{padding:7px 8px;font-size:11px;line-height:1.4}.workbench .compass-stack .compass{width:84px;height:84px}.workbench .telemetry-hud{border-radius:10px;gap:8px 20px;padding:10px 16px;bottom:16px}.workbench .telemetry-hud span{color:var(--workspace-muted);font-size:10px;font-weight:500}.workbench .telemetry-hud strong{font-size:17px;font-weight:600}.workbench .telemetry-hud .orbit-hint{color:var(--workspace-muted);font-size:11px}.workbench.panels-open .ground-control.mini-map:not(.collapsed){right:calc(var(--workspace-inset) + var(--workspace-panel-width) + var(--workspace-gap));width:280px;max-height:min(460px,100dvh - 218px);bottom:116px}.workbench .ground-control .mini-map-toggle{padding:10px 12px;font-size:12px;font-weight:600}.workbench .ground-control .mini-map-image{height:clamp(140px,22dvh,210px)}.workbench .ground-control .map-hint{color:var(--workspace-muted);padding:10px 12px;font-size:11px;line-height:1.6}.workbench .ground-control .map-telemetry{gap:8px;padding:8px 12px;font-size:11px}.workbench .ground-control .map-commands{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0 12px 8px;display:grid}.workbench .ground-control .map-compact-status{padding-inline:12px;font-size:11px}.workbench :focus-visible{outline-offset:3px;outline:2px solid #a5bfff}@media (max-width:1200px) and (min-width:961px){.workbench{--workspace-inset:12px;--workspace-panel-width:272px}.workbench .top-actions>.status{text-overflow:ellipsis;max-width:100px;overflow:hidden}.workbench .ground-control.mini-map:not(.collapsed){width:240px}}@media (max-width:960px){.workbench{--workspace-inset:8px;--workspace-panel-width:min(360px,calc(100vw - 16px))}.workbench .topbar{flex-wrap:wrap;gap:8px;min-height:90px;padding:10px 12px}.workbench .brand h1{font-size:15px}.workbench .brand p{display:none}.workbench .top-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px}.workbench .top-actions>select{width:auto;min-width:0;max-width:100px;position:static}.workbench .top-actions>.status{display:none}.workbench .view-toolbar{top:110px}.workbench .mobile-switcher{gap:4px;padding:4px;top:160px}.workbench .mobile-switcher .ui-button{min-height:38px;padding:8px 10px;font-size:12px}.workbench :is(.left-pane,.right-pane),.workbench:not(.with-joystick) :is(.left-pane,.right-pane),.workbench.with-joystick .left-pane{width:auto;max-height:calc(100dvh - 354px);inset:210px 8px 144px}.workbench .panel-heading .ui-button{width:36px;height:36px;min-height:36px}.workbench .pane-tabs .ui-button{min-height:40px}.workbench .pane-content{padding:12px}.workbench.panels-open .compass-stack{width:130px;top:216px;left:8px}.workbench .telemetry-hud{max-width:calc(100vw - 16px);bottom:12px}.workbench.panels-open .ground-control.mini-map:not(.collapsed){width:min(280px,100vw - 16px);max-height:calc(100dvh - 326px);bottom:106px;right:8px}.workbench .joystick-pane{max-height:256px;bottom:104px}.workbench[data-mobile-pane=vehicle].with-joystick .right-pane{max-height:calc(100dvh - 582px);bottom:372px}}@media (max-width:960px) and (max-height:520px){.workbench .topbar{flex-wrap:nowrap;min-height:54px}.workbench .top-actions>.ui-button{min-height:30px;padding:5px 8px;font-size:11px}.workbench .view-toolbar{top:70px}.workbench .mobile-switcher{top:116px}.workbench :is(.left-pane,.right-pane),.workbench:not(.with-joystick) :is(.left-pane,.right-pane),.workbench.with-joystick .left-pane{width:min(330px,44vw);max-height:calc(100dvh - 178px);inset:166px 8px 12px auto}.workbench .telemetry-hud{max-width:min(330px,44vw);left:8px;transform:none}.workbench .compass-stack{top:166px}.workbench .ground-control.mini-map:not(.collapsed){max-height:calc(100dvh - 178px);bottom:12px}}.workbench .gazebo-scene{touch-action:none;background:#13212c;position:absolute;inset:0}.workbench .gazebo-scene-image{object-fit:contain;pointer-events:none;width:100%;height:100%}.workbench .gazebo-view-message{text-align:center;color:#cbd5e1;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.workbench .gazebo-renderer{white-space:nowrap;padding:6px 10px;font-size:12px;position:absolute;top:154px;left:50%;transform:translate(-50%)}.workbench .gazebo-view-controls{gap:6px;padding:6px;display:flex;position:absolute;bottom:128px;left:50%;transform:translate(-50%)}body:has(.workbench) .workspace-activity{border-radius:12px;width:min(400px,100vw - 32px);bottom:120px}body:has(.workbench) .workspace-activity .ui-alert{color:#edf3fc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172af5;border-color:#425675;border-radius:12px;padding:14px 16px}body:has(.workbench) .workspace-activity .ui-alert-title{margin:0;font-size:14px;line-height:1.45}body:has(.workbench) .workspace-activity .ui-alert-description{color:#b9c9dc;overflow-wrap:anywhere;font-size:13px;line-height:1.6}body:has(.workbench) .workspace-activity .ui-alert-destructive{background:#3c1c27f5;border-color:#a8586b}body:has(.workbench) .workspace-activity .ui-alert-destructive .ui-alert-description{color:#ffd4da}body:has(.workbench) .workspace-activity .ui-button{color:#edf3fc;background:#1c2d47;border-color:#425675;border-radius:8px;width:36px;height:36px;padding:0}.workbench.panels-open .gazebo-view-message{padding-inline:calc(var(--workspace-panel-width) + var(--workspace-inset) + var(--workspace-gap))}@media (max-width:960px){.workbench .gazebo-renderer{top:256px}.workbench.panels-open .gazebo-view-message{padding-inline:24px}.workbench:is([data-mobile-pane=left],[data-mobile-pane=vehicle]) :is(.gazebo-renderer,.gazebo-view-controls){display:none}}@media (max-width:960px) and (max-height:520px){.workbench.panels-open:is([data-mobile-pane=left],[data-mobile-pane=vehicle]) .gazebo-view-message{right:350px}}
