.aiers-loading{position:fixed;inset:0;z-index:1500;display:grid;place-items:center;pointer-events:none;padding:16px;background:rgba(247,250,247,.86);box-sizing:border-box;font-family:system-ui,sans-serif;color:#173e35}
.aiers-loading-card{width:min(420px,100%);box-sizing:border-box;text-align:center;padding:28px 24px;border:1px solid #d5e3db;border-radius:18px;background:#fcfefb;box-shadow:0 12px 40px #173e3514;pointer-events:auto;max-height:calc(100dvh - 32px);overflow:auto}
.aiers-loading-card p{font-size:16px;line-height:1.6;margin:16px 0 0;overflow-wrap:anywhere}.aiers-loading-card small{display:block;margin-top:12px}
.aiers-loading-card button{min-height:44px;border:1px solid #a9c5b6;background:#e9f3ec;color:#173e35;border-radius:10px;padding:10px 18px;margin-top:18px;font:inherit;cursor:pointer}.aiers-loading-card button:focus-visible{outline:3px solid #976c07;outline-offset:3px}
dialog .aiers-loading{position:fixed;border-radius:inherit}.teacher-start [data-auth-status]:empty{display:none}
@media(max-width:600px){.thinkmoa-workspace-bar{flex-wrap:wrap!important;height:auto!important;min-height:44px;gap:4px!important;padding:6px!important}.thinkmoa-workspace-bar .thinkmoa-workspace-name{width:100%;margin-right:0!important}.thinkmoa-workspace-bar .button{font-size:12px;padding:8px 10px;min-height:38px}.thinkmoa-workspace-bar a:last-child{margin-left:auto}}

/* Approved six motions; selectors and keyframes belong only to this overlay. */
.aiers-loading{color-scheme: light dark; --page: #f4f6f3; --panel: #fff; --text: #173f36; --muted: #536c63; --line: #d7e1da; --soft: #edf4ed; --accent: #08776a; --shadow: 0 12px 50px #132d2525; --dur: 2.4s; --pink: #c54588; --blue: #316cc5; --yellow: #ad7809; --green: #218765;}
@media (prefers-color-scheme: dark){.aiers-loading{--page: #15251f; --panel: #20352d; --text: #edf6ef; --muted: #b0c8bc; --line: #456357; --soft: #2b483b; --accent: #71d2b9; --shadow: 0 12px 50px #0007; --pink: #f095c1; --blue: #91bafa; --yellow: #ecc576; --green: #8adcb6;}
}
.aiers-loading .aiers-loader{position: relative; width: 260px; max-width: 100%; height: 95px; display: flex; flex-direction: column; align-items: center; justify-content: center; --word: 36px; color: var(--text); isolation: isolate;}
.aiers-loading .aiers-motion-brand{font: bold var(--word)/1.2 ui-monospace,Consolas,"Courier New",monospace; letter-spacing: -1px; position: relative; display: inline-block; white-space: nowrap;}
.aiers-loading .aiers-motion-brand-copy{position: absolute; inset: 0px;}
.aiers-loading .aiers-loader *,.aiers-loading .aiers-loader::before,.aiers-loading .aiers-loader::after{animation-play-state: running;}
.aiers-loading .aiers-motion-static .aiers-loader *,.aiers-loading .aiers-loader.aiers-motion-error *{animation-play-state: paused !important;}
.aiers-loading .aiers-motion-static .aiers-loader *{animation: auto ease 0s 1 normal none running none !important;}
.aiers-loading .aiers-loader.aiers-motion-hidden{display: none;}
.aiers-loading .aiers-motion-rainbow .aiers-motion-brand-copy{color: transparent;        background-size: 240% 100%; background-clip: text; animation: aiers-wait-rainbow var(--dur) linear infinite;background-image:linear-gradient(90deg,var(--pink),var(--yellow),var(--green),var(--blue),var(--pink));}
.aiers-loading .aiers-motion-rainbow .aiers-motion-color-band{position: absolute; top: 12px; height: 4px; width: 40px; border-radius: 3px; background: linear-gradient(90deg,var(--pink),var(--yellow),var(--green),var(--blue)); animation: aiers-wait-band var(--dur) linear infinite;}
.aiers-loading .aiers-motion-rainbow .aiers-motion-band-rail{position: absolute; top: 0px; left: 30px; width: 200px; height: 20px; overflow: hidden;}
@keyframes aiers-wait-rainbow{
  0% { background-position: 100% 0px; }
  100% { background-position: -140% 0px; }
}
@keyframes aiers-wait-band{
  0% { transform: translateX(-45px); }
  100% { transform: translateX(205px); }
}
.aiers-loading .aiers-motion-fill-letters .aiers-motion-brand-copy{color: var(--accent); animation: aiers-wait-letters var(--dur) steps(1,end) infinite;}
.aiers-loading .aiers-motion-fill-letters .aiers-motion-brand-copy{animation-duration: calc(var(--dur)*1.5);}
.aiers-loading .aiers-motion-ticks{position: relative; width: 150px; height: 10px; overflow: hidden; margin-top: 10px;}
.aiers-loading .aiers-motion-ticks i{position: absolute; left: calc(10px + var(--slot)); top: 3px; width: 10px; height: 4px; background: var(--accent); border-radius: 2px; animation-duration: calc(var(--dur)*1.5); animation-iteration-count: infinite; animation-fill-mode: both; animation-timing-function: linear;}
.aiers-loading .aiers-motion-static .aiers-motion-ticks i{transform: none !important;}
@keyframes aiers-wait-letters{
  0%, 9.9% { clip-path: inset(0px 100% 0px 0px); }
  10%, 19.9% { clip-path: inset(0px 87.5% 0px 0px); }
  20%, 29.9% { clip-path: inset(0px 75% 0px 0px); }
  30%, 39.9% { clip-path: inset(0px 62.5% 0px 0px); }
  40%, 49.9% { clip-path: inset(0px 50% 0px 0px); }
  50%, 59.9% { clip-path: inset(0px 37.5% 0px 0px); }
  60%, 69.9% { clip-path: inset(0px 25% 0px 0px); }
  70%, 79.9% { clip-path: inset(0px 12.5% 0px 0px); }
  80%, 99.9% { clip-path: inset(0px); }
  100% { clip-path: inset(0px 100% 0px 0px); }
}
.aiers-loading .aiers-motion-trail .aiers-motion-trail-track{position: relative; width: 184px; height: 18px; margin-top: 10px; overflow: hidden;}
.aiers-loading .aiers-motion-trail .aiers-motion-trail-track::before{content: ""; position: absolute; left: 6px; right: 6px; top: 8px; height: 2px; background: var(--line);}
.aiers-loading .aiers-motion-trail .aiers-motion-light{position: absolute; left: 0px; top: 4px; width: 9px; height: 9px; border-radius: 50%; background: var(--accent); animation: aiers-wait-travel var(--dur) ease-in-out infinite;}
.aiers-loading .aiers-motion-trail .aiers-motion-light:nth-child(2){background: var(--blue); animation-delay: calc(var(--dur) / -3);}
.aiers-loading .aiers-motion-trail .aiers-motion-light:nth-child(3){background: var(--pink); animation-delay: calc(var(--dur) / -1.5);}
@keyframes aiers-wait-travel{
  0% { transform: translateX(-12px); opacity: 0.35; }
  20% { opacity: 1; }
  80% { opacity: 1; }
  100% { transform: translateX(186px); opacity: 0.35; }
}
.aiers-loading .aiers-motion-static .aiers-motion-brand-copy{clip-path: none !important;}
.aiers-loading .aiers-motion-static .aiers-motion-light:nth-child(1){transform: translateX(45px) !important;}
.aiers-loading .aiers-motion-static .aiers-motion-light:nth-child(2){transform: translateX(87px) !important;}
.aiers-loading .aiers-motion-static .aiers-motion-light:nth-child(3){transform: translateX(129px) !important;}
@media (prefers-reduced-motion: reduce){.aiers-loading .aiers-loader *{animation: auto ease 0s 1 normal none running none !important;}
.aiers-loading .aiers-motion-brand-copy{clip-path: none !important;}
.aiers-loading .aiers-motion-light:nth-child(1){transform: translateX(45px) !important;}
.aiers-loading .aiers-motion-light:nth-child(2){transform: translateX(87px) !important;}
.aiers-loading .aiers-motion-light:nth-child(3){transform: translateX(129px) !important;}
}
@media (forced-colors: active){.aiers-loading .aiers-loader,.aiers-loading .aiers-motion-brand,.aiers-loading .aiers-motion-brand-copy{color: canvastext !important; background: none !important;}
.aiers-loading .aiers-motion-color-band,.aiers-loading .aiers-motion-light{background: highlight !important;}
.aiers-loading .aiers-motion-brand-copy{clip-path: none !important;}
.aiers-loading .aiers-loader *{animation: auto ease 0s 1 normal none running none !important;}
.aiers-loading .aiers-motion-light:nth-child(1){transform: translateX(45px) !important;}
.aiers-loading .aiers-motion-light:nth-child(2){transform: translateX(87px) !important;}
.aiers-loading .aiers-motion-light:nth-child(3){transform: translateX(129px) !important;}
}
@keyframes aiers-wait-bar0{
  0% { transform: translateX(calc(-24px - var(--slot))); animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
  22% { transform: translateX(0px); animation-timing-function: linear; }
  60% { transform: translateX(0px); animation-timing-function: cubic-bezier(0.7, 0, 0.84, 0); }
  75%, 100% { transform: translateX(calc(164px - var(--slot))); }
}
@keyframes aiers-wait-bar1{
  0%, 3% { transform: translateX(calc(-24px - var(--slot))); animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
  25% { transform: translateX(0px); animation-timing-function: linear; }
  62.8% { transform: translateX(0px); animation-timing-function: cubic-bezier(0.7, 0, 0.84, 0); }
  77.8%, 100% { transform: translateX(calc(164px - var(--slot))); }
}
@keyframes aiers-wait-bar2{
  0%, 6% { transform: translateX(calc(-24px - var(--slot))); animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
  28% { transform: translateX(0px); animation-timing-function: linear; }
  65.6% { transform: translateX(0px); animation-timing-function: cubic-bezier(0.7, 0, 0.84, 0); }
  80.6%, 100% { transform: translateX(calc(164px - var(--slot))); }
}
@keyframes aiers-wait-bar3{
  0%, 9% { transform: translateX(calc(-24px - var(--slot))); animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
  31% { transform: translateX(0px); animation-timing-function: linear; }
  68.4% { transform: translateX(0px); animation-timing-function: cubic-bezier(0.7, 0, 0.84, 0); }
  83.4%, 100% { transform: translateX(calc(164px - var(--slot))); }
}
@keyframes aiers-wait-bar4{
  0%, 12% { transform: translateX(calc(-24px - var(--slot))); animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
  34% { transform: translateX(0px); animation-timing-function: linear; }
  71.2% { transform: translateX(0px); animation-timing-function: cubic-bezier(0.7, 0, 0.84, 0); }
  86.2%, 100% { transform: translateX(calc(164px - var(--slot))); }
}
@keyframes aiers-wait-bar5{
  0%, 15% { transform: translateX(calc(-24px - var(--slot))); animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
  37% { transform: translateX(0px); animation-timing-function: linear; }
  74% { transform: translateX(0px); animation-timing-function: cubic-bezier(0.7, 0, 0.84, 0); }
  89%, 100% { transform: translateX(calc(164px - var(--slot))); }
}
@keyframes aiers-wait-bar6{
  0%, 18% { transform: translateX(calc(-24px - var(--slot))); animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
  40% { transform: translateX(0px); animation-timing-function: linear; }
  76.8% { transform: translateX(0px); animation-timing-function: cubic-bezier(0.7, 0, 0.84, 0); }
  91.8%, 100% { transform: translateX(calc(164px - var(--slot))); }
}
@keyframes aiers-wait-bar7{
  0%, 21% { transform: translateX(calc(-24px - var(--slot))); animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
  43% { transform: translateX(0px); animation-timing-function: linear; }
  79.6% { transform: translateX(0px); animation-timing-function: cubic-bezier(0.7, 0, 0.84, 0); }
  94.6%, 100% { transform: translateX(calc(164px - var(--slot))); }
}
@keyframes aiers-wait-bar8{
  0%, 24% { transform: translateX(calc(-24px - var(--slot))); animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
  46% { transform: translateX(0px); animation-timing-function: linear; }
  82.4% { transform: translateX(0px); animation-timing-function: cubic-bezier(0.7, 0, 0.84, 0); }
  97.4%, 100% { transform: translateX(calc(164px - var(--slot))); }
}
.aiers-loading .aiers-motion-excluded:not([open]) .aiers-loader *{animation-play-state: paused !important;}
.aiers-loading .aiers-motion-ribbon-rail{position: relative; width: 190px; height: 2px; margin-top: 13px; background: var(--line); border-radius: 2px; overflow: hidden;}
.aiers-loading .aiers-motion-ribbon-glow{position: absolute; inset: 0px; width: 86px; background: linear-gradient(90deg, transparent, rgb(218, 121, 167), rgb(219, 180, 101), rgb(130, 183, 153), rgb(120, 165, 209), transparent); animation: 4.8s ease-in-out 0s infinite normal none running aiers-wait-ribbon-flow; transform: translateX(-86px);}
@keyframes aiers-wait-ribbon-flow{
  0% { transform: translateX(-86px); opacity: 0.35; }
  35%, 65% { opacity: 1; }
  100% { transform: translateX(190px); opacity: 0.35; }
}
.aiers-loading .aiers-motion-orbit .aiers-motion-brand{--word: 31px;}
.aiers-loading .aiers-motion-orbit-ring{position: absolute; inset: 0px; margin: auto; width: 248px; height: 84px; border: 1px solid var(--line); border-radius: 50%; pointer-events: none;}
.aiers-loading .aiers-motion-orbiter{position: absolute; left: 123px; top: 41px; width: 0px; height: 0px; animation-duration: 7.2s; animation-timing-function: linear; animation-iteration-count: infinite; animation-direction: normal; animation-fill-mode: none; animation-play-state: running; animation-name: aiers-wait-orbit-around; animation-timeline: auto; animation-range: normal; animation-delay: var(--phase);}
.aiers-loading .aiers-motion-orbiter i{position: absolute; left: 119px; top: -3px; width: 8px; height: 5px; border-radius: 3px; background: var(--accent); transform: rotate(25deg);}
.aiers-loading .aiers-motion-orbiter:nth-child(2) i{background: var(--pink);}
.aiers-loading .aiers-motion-orbiter:nth-child(3) i{background: var(--blue);}
.aiers-loading .aiers-motion-orbiter{transform: scaleY(0.335);}
.aiers-loading .aiers-motion-orbiter i{transform: scaleY(2.985);}
@keyframes aiers-wait-orbit-around{
  0% { transform: scaleY(0.335) rotate(0deg); }
  100% { transform: scaleY(0.335) rotate(360deg); }
}
.aiers-loading .aiers-motion-signature svg{width: 216px; max-width: 100%; height: 56px; overflow: visible; fill: none; stroke: var(--text); stroke-width: 2.8; stroke-linecap: round; stroke-linejoin: round;}
.aiers-loading .aiers-motion-ink-ghost{opacity: 0.16;}
.aiers-loading .aiers-motion-ink-write{stroke-dasharray: 1; stroke-dashoffset: 0; animation-duration: 6s; animation-timing-function: ease-in-out; animation-iteration-count: infinite;}
@keyframes aiers-wait-ink0{
  0%, 1% { stroke-dashoffset: 1; opacity: 0; }
  8%, 86% { stroke-dashoffset: 0; opacity: 1; }
  96%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
@keyframes aiers-wait-ink1{
  0%, 8% { stroke-dashoffset: 1; opacity: 0; }
  15%, 86% { stroke-dashoffset: 0; opacity: 1; }
  96%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
@keyframes aiers-wait-ink2{
  0%, 15% { stroke-dashoffset: 1; opacity: 0; }
  22%, 86% { stroke-dashoffset: 0; opacity: 1; }
  96%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
@keyframes aiers-wait-ink3{
  0%, 22% { stroke-dashoffset: 1; opacity: 0; }
  29%, 86% { stroke-dashoffset: 0; opacity: 1; }
  96%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
@keyframes aiers-wait-ink4{
  0%, 29% { stroke-dashoffset: 1; opacity: 0; }
  36%, 86% { stroke-dashoffset: 0; opacity: 1; }
  96%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
@keyframes aiers-wait-ink5{
  0%, 36% { stroke-dashoffset: 1; opacity: 0; }
  43%, 86% { stroke-dashoffset: 0; opacity: 1; }
  96%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
@keyframes aiers-wait-ink6{
  0%, 43% { stroke-dashoffset: 1; opacity: 0; }
  50%, 86% { stroke-dashoffset: 0; opacity: 1; }
  96%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
@keyframes aiers-wait-ink7{
  0%, 50% { stroke-dashoffset: 1; opacity: 0; }
  57%, 86% { stroke-dashoffset: 0; opacity: 1; }
  96%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
.aiers-loading .aiers-motion-static .aiers-motion-ink-write{stroke-dashoffset: 0 !important; opacity: 1 !important;}
@media (prefers-reduced-motion: reduce){.aiers-loading .aiers-motion-ink-write{stroke-dashoffset: 0 !important; opacity: 1 !important;}
}
@media (forced-colors: active){.aiers-loading .aiers-motion-ink-write{stroke-dashoffset: 0 !important; opacity: 1 !important;}
.aiers-loading .aiers-motion-ribbon-glow,.aiers-loading .aiers-motion-orbiter i{background: highlight !important;}
}

.aiers-loading-brand{display:flex;justify-content:center;max-width:100%;margin-inline:auto}.aiers-loading-card{background:var(--panel);color:var(--text)}
[data-aiers-loading-hidden="true"] .aiers-loading .aiers-loader *{animation-play-state:paused!important}
.aiers-loading[data-state="error"] .aiers-loader *{animation:none!important}.aiers-loading[data-state="error"] .aiers-motion-ink-write{stroke-dashoffset:0!important;opacity:1!important}
@media(prefers-reduced-motion:reduce),(forced-colors:active){.aiers-loading .aiers-loader *{animation:none!important}.aiers-loading .aiers-motion-ink-write{stroke-dashoffset:0!important;opacity:1!important}.aiers-loading .aiers-motion-brand-copy{clip-path:none!important}}
