/* AutoInstructors 1.6.1 — Orbital Blue first-run WebGL scene */
.orbital-shell{
  max-width:620px;
  padding-left:0;
  padding-right:0;
  padding-bottom:0;
  overflow:hidden;
  background:
    radial-gradient(90% 55% at 50% 8%,rgba(0,139,255,.15),transparent 62%),
    linear-gradient(180deg,#03111f 0%,#020b14 58%,#020810 100%);
}
.orbital-shell>.footer{display:none}
.orbital-onboarding{
  position:relative;
  min-height:calc(var(--app-visual-height,100dvh) - env(safe-area-inset-bottom));
  display:grid;
  grid-template-rows:auto 1fr;
  isolation:isolate;
  overflow:hidden;
}
.orbital-onboarding:before,
.orbital-onboarding:after{
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:50%;
  filter:blur(12px);
  opacity:.55;
  z-index:-1;
}
.orbital-onboarding:before{width:340px;height:340px;left:-190px;top:16%;background:radial-gradient(circle,rgba(0,132,255,.16),transparent 70%)}
.orbital-onboarding:after{width:300px;height:300px;right:-190px;top:38%;background:radial-gradient(circle,rgba(0,217,255,.12),transparent 72%)}
.orbital-onboarding>.onboarding-top{
  position:relative;
  z-index:8;
  min-height:54px;
  padding:8px 18px 0;
}
.orbital-onboarding .lang-pill{
  background:rgba(3,18,31,.56);
  border-color:rgba(100,205,255,.18);
  backdrop-filter:blur(16px) saturate(150%);
  -webkit-backdrop-filter:blur(16px) saturate(150%);
  box-shadow:0 8px 26px rgba(0,0,0,.16);
}
.orbital-panel{
  position:relative;
  z-index:2;
  align-self:stretch;
  max-width:none;
  margin:0;
  padding:0 14px calc(env(safe-area-inset-bottom) + 20px);
  display:grid;
  align-content:center;
  grid-template-rows:minmax(250px,42vh) auto;
  text-align:left;
  animation:none!important;
}
.orbital-hero{
  position:relative;
  min-height:250px;
  height:100%;
  max-height:410px;
  display:grid;
  place-items:center;
  margin:-30px -14px -6px;
}
.orbital-scene-host{
  position:absolute;
  z-index:2;
  inset:-34px -28px -6px;
  overflow:visible;
  touch-action:pan-y;
  contain:layout paint;
}
.orbital-webgl{
  position:absolute;
  z-index:2;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  pointer-events:none;
  filter:saturate(112%) contrast(105%);
}
.orbital-core-glow{
  position:absolute;
  z-index:1;
  left:9%;
  top:12%;
  width:min(28vw,112px);
  aspect-ratio:1;
  transform:translate(-18%,-18%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(235,252,255,.86) 0 3%,rgba(96,218,255,.40) 7%,rgba(16,139,255,.18) 28%,rgba(0,88,190,.06) 48%,transparent 72%);
  filter:blur(8px);
  mix-blend-mode:screen;
  opacity:.72;
  pointer-events:none;
  animation:orbitalAura 5.2s ease-in-out infinite;
}
.orbital-css-planet{
  position:absolute;
  z-index:2;
  left:50%;top:50%;
  width:min(42vw,176px);aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  opacity:0;
  pointer-events:none;
  background: url("../orbital/orbital-earth-fallback-v2055.png?v=v2.0.55") center center / cover no-repeat, #042d50;
  box-shadow:0 0 0 1px rgba(80,205,255,.24),0 0 42px rgba(0,143,255,.44),0 0 110px rgba(0,110,255,.20);
}
.orbital-no-webgl .orbital-css-planet{opacity:1}
.orbital-scene-label{
  position:absolute;
  z-index:3;
  left:50%;
  bottom:7px;
  transform:translateX(-50%);
  width:max-content;
  max-width:86%;
  color:rgba(128,205,244,.66);
  font-size:9px;
  font-weight:750;
  letter-spacing:.18em;
  text-align:center;
  text-transform:uppercase;
  text-shadow:0 0 18px rgba(0,170,255,.25);
}
.orbital-glass-card{
  position:relative;
  overflow:hidden;
  width:min(100%,500px);
  margin:0 auto;
  padding:23px 20px 18px;
  border:1px solid rgba(89,195,255,.20);
  border-radius:28px;
  background:
    linear-gradient(145deg,rgba(9,42,67,.64),rgba(3,17,30,.80)),
    rgba(3,16,28,.62);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 24px 70px rgba(0,0,0,.40),
    0 0 50px rgba(0,112,255,.08);
  backdrop-filter:blur(24px) saturate(145%);
  -webkit-backdrop-filter:blur(24px) saturate(145%);
  animation:orbitalCardIn 620ms cubic-bezier(.18,.86,.24,1) both;
}
.orbital-glass-card:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(110deg,transparent 0 36%,rgba(86,213,255,.07) 48%,transparent 60%),
    radial-gradient(90% 70% at 50% -12%,rgba(0,159,255,.14),transparent 68%);
  transform:translateX(-70%);
  animation:orbitalGlassSweep 5.8s ease-in-out 1.4s infinite;
}
.orbital-wordmark{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:center;
  align-items:baseline;
  gap:0;
  margin:0 0 7px;
  font-size:31px;
  font-weight:900;
  letter-spacing:-.055em;
}
.orbital-wordmark>span{color:#f6fbff;text-shadow:0 6px 26px rgba(255,255,255,.08)}
.orbital-wordmark>strong{
  font:inherit;
  background:linear-gradient(180deg,#73e5ff 0%,#22afff 42%,#087cff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-shadow:none;
  filter:drop-shadow(0 5px 16px rgba(0,141,255,.22));
}
.orbital-subtitle{
  position:relative;
  z-index:1;
  margin:0 auto 18px!important;
  max-width:340px;
  color:#86a2b7!important;
  font-size:12px!important;
  line-height:1.5!important;
  text-align:center;
}
.orbital-role-label{
  position:relative;
  z-index:1;
  margin:0 0 8px;
  color:#57788f;
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.orbital-role-actions{position:relative;z-index:1;display:grid;gap:9px}
.orbital-role{
  appearance:none;
  width:100%;
  min-height:64px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 28px;
  gap:11px;
  align-items:center;
  border-radius:18px;
  padding:10px 12px;
  text-align:left;
  color:#f2f9ff;
  border:1px solid rgba(110,204,255,.13);
  background:rgba(3,18,31,.64);
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  transition:transform .16s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.orbital-role.primary{
  border-color:rgba(67,191,255,.34);
  background:linear-gradient(135deg,rgba(5,115,221,.42),rgba(3,42,73,.78));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 30px rgba(0,115,224,.14);
}
.orbital-role:active{transform:scale(.985)}
.orbital-role.primary:active{background:linear-gradient(135deg,rgba(13,139,255,.54),rgba(4,52,88,.84))}
.orbital-role-icon{
  width:42px;height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:#63d7ff;
  background:rgba(0,142,255,.10);
  border:1px solid rgba(65,190,255,.18);
  box-shadow:inset 0 0 18px rgba(0,132,255,.06);
}
.orbital-role.primary .orbital-role-icon{background:linear-gradient(145deg,rgba(0,176,255,.24),rgba(0,93,220,.20));color:#b4efff}
.orbital-role-icon .ui-icon{width:23px;height:23px}
.orbital-role>span:nth-child(2){display:grid;gap:3px;min-width:0}
.orbital-role strong{font-size:14px;font-weight:820;letter-spacing:-.015em}
.orbital-role small{color:#6f90a6;font-size:10px;line-height:1.35}
.orbital-role-arrow{font-size:21px;color:#69d1ff;text-align:center;transition:transform .16s ease}
.orbital-role:active .orbital-role-arrow{transform:translateX(3px)}
.orbital-admin-link{
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border:0;
  border-top:1px solid rgba(126,196,255,.08);
  margin-top:2px;
  padding:11px 4px 2px;
  background:transparent;
  color:#7092a9;
  font-size:11px;
  font-weight:650;
}
.orbital-admin-link span{color:#47c7ff;font-size:16px}
.orbital-invite-note{
  position:relative;
  z-index:1;
  margin-top:10px;
  padding:9px 11px;
  border-radius:13px;
  border:1px solid rgba(56,186,255,.14);
  background:rgba(0,120,220,.08);
  color:#86cbed;
  font-size:10px;
  line-height:1.4;
  text-align:center;
}
.orbital-trust{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:13px;
  color:#4e6c82;
  font-size:9px;
  letter-spacing:.025em;
}
.orbital-trust>span{width:6px;height:6px;border-radius:50%;background:#32d3ff;box-shadow:0 0 11px rgba(50,211,255,.7)}
@keyframes orbitalAura{0%,100%{opacity:.58;transform:translate(-18%,-18%) scale(.96)}50%{opacity:.82;transform:translate(-18%,-18%) scale(1.06)}}
@keyframes orbitalCardIn{from{opacity:0;transform:translateY(20px) scale(.985)}to{opacity:1;transform:none}}
@keyframes orbitalGlassSweep{0%,58%{transform:translateX(-72%);opacity:0}70%{opacity:1}88%,100%{transform:translateX(72%);opacity:0}}
@media(max-width:390px){
  .orbital-panel{grid-template-rows:minmax(226px,38vh) auto;padding-left:12px;padding-right:12px}
  .orbital-hero{min-height:226px;margin-top:-26px}
  .orbital-glass-card{padding:20px 16px 15px;border-radius:24px}
  .orbital-wordmark{font-size:28px}
  .orbital-role{min-height:60px;grid-template-columns:39px minmax(0,1fr) 24px;padding:9px 10px}
  .orbital-role-icon{width:39px;height:39px;border-radius:13px}
  .orbital-subtitle{margin-bottom:14px!important}
}
@media(max-height:680px){
  .orbital-panel{grid-template-rows:minmax(190px,34vh) auto;align-content:start}
  .orbital-hero{min-height:190px;margin-top:-34px}
  .orbital-scene-label{bottom:0}
  .orbital-glass-card{padding-top:17px;padding-bottom:13px}
  .orbital-wordmark{font-size:26px;margin-bottom:4px}
  .orbital-subtitle{font-size:11px!important;margin-bottom:12px!important}
  .orbital-role{min-height:56px}
}
@media(prefers-reduced-motion:reduce){
  .orbital-core-glow,.orbital-glass-card,.orbital-glass-card:before{animation:none!important}
  .orbital-role,.orbital-role-arrow{transition:none!important}
}



/* AutoSchools 2.0.55: orbital registration, only after canonical context resolution.
   No business authorization is implemented in CSS. */
html.autoschools-orbital-entry,html.autoschools-orbital-entry body { background:#020b14!important; }
html.autoschools-orbital-entry .brand-rail,html.autoschools-orbital-entry .bottom-nav,html.autoschools-orbital-entry .role-apps-head {display:none!important}
html.autoschools-orbital-entry .app {max-width:620px;padding:0!important;min-height:100dvh;background:transparent!important;box-shadow:none!important}
html.autoschools-orbital-entry #view-profile {padding:0!important;margin:0!important;max-width:none!important}
html.autoschools-orbital-entry #profile-list {padding:0!important;margin:0!important;max-width:none!important}
html.autoschools-orbital-entry .registration-entry.as-orbital-registration {
  display:block;min-height:100dvh;padding:0 0 max(18px,env(safe-area-inset-bottom));
  background:radial-gradient(90% 55% at 50% 8%,rgba(0,139,255,.15),transparent 62%),linear-gradient(180deg,#03111f 0%,#020b14 58%,#020810 100%);
  color:#e7f2ff;overflow:hidden;
}
.as-orbital-registration .orbital-panel {
  padding:0 14px calc(env(safe-area-inset-bottom) + 24px);
  grid-template-rows:minmax(205px,36dvh) auto;
  min-height:calc(100dvh - 48px);
  align-content:center;
}
.as-orbital-registration .as-orbital-language {display:flex;justify-content:flex-end;align-items:center;min-height:48px;padding:8px 18px;}
.as-orbital-registration .as-orbital-language .as-orbital-locale {color:#b4dfff;font-size:11px;font-weight:700;letter-spacing:.08em;}
.as-orbital-registration .orbital-hero {min-height:205px;margin:-22px -14px -12px}
.as-orbital-registration .orbital-glass-card {z-index:4}
.as-orbital-registration .orbital-wordmark {font-size:31px}
.as-orbital-registration .orbital-role-actions {gap:9px}
.as-orbital-registration .registration-role-card.orbital-role {
  display:grid;grid-template-columns:42px minmax(0,1fr) 25px;
  min-height:60px;padding:9px 12px;gap:11px;box-shadow:none;
  border:1px solid rgba(110,204,255,.13);border-radius:18px;
  background:rgba(3,18,31,.64);
}
.as-orbital-registration .registration-role-card.orbital-role:first-child {
  background:linear-gradient(135deg,rgba(5,115,221,.42),rgba(3,42,73,.78));
  border-color:rgba(67,191,255,.34)
}
.as-orbital-registration .registration-role-icon.orbital-role-icon {width:42px;height:42px;border-radius:14px}
.as-orbital-registration .registration-role-copy {display:grid;gap:3px;min-width:0}
.as-orbital-registration .registration-role-copy strong {font-size:14px;color:#f2f9ff}
.as-orbital-registration .registration-role-copy small {color:#91afc4;font-size:11px;line-height:1.4}
.as-orbital-registration .registration-role-card .registration-role-chevron {color:#69d1ff;width:22px;align-self:center}
.as-orbital-registration .registration-network-link {
  margin-top:10px;width:100%;border:1px solid rgba(98,196,255,.13);
  border-radius:14px;background:rgba(8,29,49,.5);color:#cfeeff;min-height:50px;
}
.as-orbital-registration .registration-entry-secondary {margin-top:12px;text-align:center;color:#8ba6bc;font-size:12px}
.as-orbital-registration .registration-entry-secondary button {color:#5bcaff}
.as-orbital-registration .as-orbital-security {display:flex;justify-content:center;align-items:center;gap:7px;margin-top:12px;color:#81a5c0;font-size:10px}
.as-orbital-registration .as-orbital-security::before {content:'';width:6px;height:6px;border-radius:50%;background:#32d3ff;box-shadow:0 0 11px rgba(50,211,255,.7)}
/* Workspaces borrow mobile motion and glass treatments without changing existing APIs/actions. */
html.as-orbital-workspace body {background:linear-gradient(180deg,#031322 0%,#061829 55%,#03101d 100%);}
html.as-orbital-workspace .brand-rail {border-color:rgba(81,166,225,.16)!important;background:rgba(3,20,35,.83)!important}
html.as-orbital-workspace #role-bottom-nav.nav-inner {
  border-color:rgba(104,188,240,.23)!important;
  background:rgba(3,20,34,.88)!important;
  box-shadow:0 12px 36px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.04)!important;
}
html.as-orbital-workspace .section.active {animation:asOrbitalContentIn .24s cubic-bezier(.2,.8,.2,1)}
@keyframes asOrbitalContentIn {from{opacity:.75;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:390px){
  .as-orbital-registration .orbital-panel{grid-template-rows:minmax(186px,32dvh) auto;padding-left:12px;padding-right:12px}
  .as-orbital-registration .orbital-hero{min-height:186px}
  .as-orbital-registration .orbital-glass-card{padding:17px 14px 14px}
  .as-orbital-registration .orbital-wordmark{font-size:27px}
  .as-orbital-registration .registration-role-card.orbital-role{min-height:56px}
}
@media(max-height:680px){
  .as-orbital-registration .orbital-panel{grid-template-rows:minmax(150px,25dvh) auto}
  .as-orbital-registration .orbital-hero{min-height:150px}
}
@media(prefers-reduced-motion:reduce){html.as-orbital-workspace .section.active{animation:none!important}}

.as-orbital-registration .as-orbital-language{justify-content:space-between;gap:12px;position:relative;z-index:7}
.as-orbital-registration .as-orbital-languages{display:flex;align-items:center;gap:5px}
.as-orbital-registration .as-orbital-languages button{background:rgba(6,27,48,.55);border:1px solid rgba(95,178,232,.17);border-radius:11px;min-width:36px;min-height:32px;padding:4px 6px;color:#92b5c9;font-size:10px;font-weight:750;cursor:pointer}
.as-orbital-registration .as-orbital-languages button[aria-pressed="true"]{background:rgba(15,104,189,.35);border-color:rgba(86,196,255,.5);color:#fff}
/* Donor Orbital Blue registration form language: the same interface flows
   remain backed by AutoSchools canonical role and invite APIs. */
html.as-registration-gate .registration-wizard,html.as-registration-gate .student-join-shell,html.as-registration-gate .registration-status-shell{
  border-radius:24px;border:1px solid rgba(89,195,255,.16);
  background:linear-gradient(145deg,rgba(9,42,67,.53),rgba(3,17,30,.83));
  padding:16px 16px calc(22px + env(safe-area-inset-bottom));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 18px 40px rgba(0,0,0,.20);
}
html.as-registration-gate .registration-form-card,html.as-registration-gate .student-join-preview{
  border-color:rgba(80,176,248,.15)!important;background:rgba(3,17,30,.52)!important;
}
html.as-registration-gate .registration-wizard .field:focus-visible,html.as-registration-gate .student-join-shell .field:focus-visible{
  outline:2px solid rgba(40,166,255,.62);outline-offset:2px;
}
