html:has(meta[name="orbally-projects-runtime"][content="server"]):not(.projects-ready) #app{display:none}
.runtime-gate{position:fixed;inset:0;z-index:100;background:#f2f5f9;overflow:auto;padding:8vh 20px}.runtime-gate[hidden]{display:none}.runtime-card{max-width:820px;margin:auto;background:white;border:1px solid #dbe3ed;border-radius:16px;padding:32px}.runtime-card h1{font-family:'Avenir Next',sans-serif;font-size:28px;letter-spacing:-1px}.runtime-card label{display:grid;gap:8px;margin:16px 0;color:#456381}.runtime-card input,.runtime-card select{padding:12px;border:1px solid #bdccdd;border-radius:7px}.runtime-projects{margin:20px 0}.runtime-original{max-height:55vh;overflow:auto;white-space:pre-wrap;font:12px/1.6 monospace;padding:20px;background:#f2f5f9}.runtime-files{display:flex;flex-wrap:wrap;gap:12px}.runtime-status{padding:12px 25px;background:#e7eef7;color:#23354b;display:flex;gap:15px;align-items:center;font-size:12px}.runtime-status[hidden]{display:none}.runtime-status button{border:1px solid #91a9c2;padding:7px;border-radius:5px}.projects-runtime .dashboard-right,.projects-runtime .project-meta,.projects-runtime .intake-banner,.projects-runtime [data-view=sources],.projects-runtime #start-dialog,.projects-runtime [data-route=sources],.projects-runtime #start-board,.projects-runtime #inbox-start{display:none!important}.projects-runtime .dashboard-grid{grid-template-columns:1fr}.projects-runtime .prototype-note{display:none}.runtime-file{padding:18px;border-bottom:1px solid #dbe3ed;display:flex;gap:15px;justify-content:space-between}.runtime-file small{display:block;color:#697d94;margin-top:6px}

.runtime-languages{display:flex;gap:8px;align-items:center;border-top:1px solid #dbe3ed;margin-top:24px;padding-top:14px;color:#456381}.runtime-languages button{padding:6px 8px;border-radius:4px}.runtime-languages button[aria-pressed=true]{background:#e6eef7;font-weight:600}
.runtime-legacy-sources{display:grid;gap:8px;margin-bottom:20px}.runtime-legacy-sources article{padding:12px;border:1px solid #dbe3ed;border-radius:7px}.runtime-legacy-sources small{display:block;margin-top:5px;color:#697d94}
.runtime-account{margin:12px 20px 0;text-align:left;border:0;background:transparent;color:#456381;font:12px inherit;padding:8px}.runtime-account:hover{color:#1260bd}.runtime-card button{cursor:pointer}.runtime-card button:disabled{opacity:.5;cursor:wait}
.projects-empty [hidden]{display:none!important}
.runtime-company-label{display:grid;gap:7px;font-size:10px;letter-spacing:.04em;color:#70869c}
.runtime-company-label select{width:100%;min-width:0;padding:8px 9px;border:1px solid #cedbe7;border-radius:7px;background:#f8fbfd;color:#23354b;font:12px 'Avenir Next',sans-serif;letter-spacing:0}
.runtime-dashboard-empty{max-width:850px;margin-top:28px;padding:32px;border:1px solid #d7e2ec;border-radius:16px;background:#fbfdff}
.runtime-dashboard-empty h2{margin:0 0 20px;font-family:'Avenir Next',sans-serif;font-size:24px;letter-spacing:-.6px;font-weight:500}
.runtime-dashboard-empty p{font-size:14px;color:#70869c}
.runtime-dashboard-empty .runtime-projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.runtime-dashboard-empty .snapshot-item{width:100%;padding:18px;text-align:left;border:1px solid #d7e2ec;background:#f1f6fb;border-radius:10px;cursor:pointer}
.runtime-dashboard-actions{display:flex;align-items:end;gap:14px;margin-top:28px;padding-top:24px;border-top:1px solid #dce5ee}
.runtime-dashboard-actions label{display:grid;gap:8px;flex:1;max-width:450px;font-size:12px;color:#647d96}
.runtime-dashboard-actions input{width:100%;height:42px;padding:10px 12px;border:1px solid #cad8e6;border-radius:8px;background:#fff;color:#23354b;font:inherit}
.runtime-dashboard-actions button{min-height:42px}
.projects-empty #dashboard-name{cursor:default;opacity:1;color:#23354b}
.projects-runtime .runtime-account{color:#b7cbe0}
.projects-runtime .runtime-account:hover{color:#fff}
.projects-empty .nav-item:disabled{opacity:.4;cursor:default}
@media(max-width:680px){.runtime-dashboard-empty{padding:22px}.runtime-dashboard-actions{align-items:stretch;flex-direction:column}}

/* Sidebar controls share one quiet, dark surface. */
.rail .runtime-company-label{display:grid;width:100%;gap:9px;color:#b0c2d4;font-size:10px;letter-spacing:.06em}
.rail .runtime-company-label select{appearance:none;color-scheme:dark;width:100%;min-height:42px;padding:10px 32px 10px 12px;border:1px solid #ffffff16;border-radius:9px;background:#ffffff05 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23dce6f0' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center;color:#eef4fb;font-family:inherit;font-size:12px;line-height:20px;letter-spacing:0;cursor:pointer}
.rail .runtime-company-label select option{background:#263d55;color:#eef4fb}
.rail .runtime-company-label select:hover,.rail #project-picker:hover,.rail-add-project:hover{background-color:#ffffff0d;border-color:#ffffff2b}
.rail select:focus-visible,.rail button:focus-visible{outline:2px solid #b1c8df;outline-offset:3px}
.rail nav #inbox-badge{display:inline;margin:0 0 0 1px;padding:0;min-width:0;width:auto;height:auto;background:none;border:0;border-radius:0;color:#fff;font:inherit;letter-spacing:inherit;line-height:inherit}
.rail-project-controls{display:flex;align-items:stretch;gap:8px}
.rail #project-picker{min-width:0;flex:1;min-height:42px;margin:0;padding:10px 12px;border:1px solid #ffffff16;border-radius:9px;background:#ffffff05;color:#eef4fb}
.rail #rail-project-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rail .rail-add-project{display:grid;place-items:center;flex:0 0 36px;width:36px;padding:0;border:1px solid #ffffff16;border-radius:9px;background:#ffffff05;color:#dce6f0}
.rail-add-project svg,.runtime-account svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.rail #rail-phase{display:none}
.rail .rail-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 0 0;margin-top:0}
#rail-company-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#eef4fb;font-size:11px}
.rail .runtime-account{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;margin:0;padding:4px 0;border:0;background:none;color:#afc3d8;font:11px/1.4 'Avenir Next',sans-serif;cursor:pointer}
.rail .runtime-account:hover{color:#fff}
.rail .runtime-account svg{width:15px;height:15px}
.projects-runtime .demo-label{display:none}
#new-project-dialog{width:min(420px,94vw)}
#new-project-dialog form{margin-top:22px}
#new-project-dialog .actions{justify-content:flex-end}
.mobile-only{display:none}
@media(max-width:680px){
  .rail{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;padding:20px}
  .rail .brand{grid-column:1/-1;margin:0 0 5px}
  .rail .company{display:block;grid-column:1/-1;margin:0;padding:0;border:0}
  .rail .rail-project{display:block;grid-column:1/-1;margin:0}
  .rail-project .nav-label{display:block;margin:0 0 9px;padding:0;font-size:10px}
  .rail .rail-project-controls{width:100%}
  .rail .runtime-company-label select,.rail #project-picker{font-size:14px;min-height:44px}
  .rail .rail-add-project{display:none}
  .rail nav{grid-column:1/-1;padding:0;gap:0}
  .rail nav [data-route="dashboard"],.rail nav [data-route="canvas"],.rail nav [data-route="sources"],.rail nav [data-route="reports"]{display:none}
  .rail nav [data-route="inbox"]{padding:0;background:none;font-size:13px;color:#dce6f0}
  .rail .locale-switch{grid-column:2;grid-row:1;margin:0;padding:0;align-self:start;font-size:11px}
  .rail .brand{padding-right:85px;font-size:22px;gap:6px}
  .rail .rail-foot{grid-column:1/-1;margin:0;padding-top:13px;gap:10px;border-top:1px solid #ffffff15}
  .rail .runtime-account{font-size:12px}
  .rail #rail-company-name{font-size:12px}
  .projects-mobile-upload .topbar{padding:14px 20px}
  .projects-mobile-upload .phase-bar,.projects-mobile-upload .kpis,.projects-mobile-upload .project-meta,.projects-mobile-upload .dashboard-right,.projects-mobile-upload .dashboard-left>.panel:not(.upload-panel),.projects-mobile-upload .page-heading>[data-route],.projects-mobile-upload .upload-modes,.projects-mobile-upload .runtime-dashboard-actions{display:none!important}
  .projects-mobile-upload [data-view="canvas"],.projects-mobile-upload [data-view="reports"],.projects-mobile-upload [data-view="sources"]{display:none!important}
  .projects-mobile-upload .page-heading h1{font-size:30px}
  .projects-mobile-upload .dropzone{padding:25px 16px}
  .projects-mobile-upload .runtime-file{padding:16px 0;gap:10px;flex-wrap:wrap}
  .mobile-only{display:block}
  #mobile-upload-intro{margin:0 0 24px;padding:24px;background:#fbfdff;border:1px solid #d7e2ec;border-radius:14px}
  #mobile-upload-intro h2{font:500 21px/1.3 'Avenir Next',sans-serif;margin:0 0 9px;color:#23354b}
  #mobile-upload-intro p{font-size:13px;line-height:1.6;color:#697d94;margin:0 0 20px}
  .runtime-original,.runtime-card label:has(#runtime-name),#runtime-create{display:none!important}
}

@media(max-width:680px){.projects-mobile-upload [data-view="inbox"] .page-heading>[data-upload]{display:none}}
