.mnt-root{position:fixed;top:12px;right:0;left:0;z-index:90;display:flex;justify-content:center;padding:0 calc(var(--spacing, 4px) * 3);pointer-events:none}.mnt-island{--mnt-amber: var(--ds-amber-500, #fda209);--mnt-amber-soft: var(--ds-amber-300, #fdc15a);--mnt-mono: var(--ds-font-mono, ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace);position:relative;width:min(94vw,560px);overflow:hidden;color:#fff;pointer-events:auto;background:radial-gradient(90% 160% at 0% 0%,color-mix(in srgb,var(--mnt-amber) 20%,transparent),transparent 48%),linear-gradient(180deg,color-mix(in srgb,var(--ds-slate-800, #15243a) 97%,transparent),color-mix(in srgb,var(--ds-slate-900, #0b1526) 97%,transparent));-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);box-shadow:inset 0 0 0 1px #ffffff14,inset 0 1px #ffffff1a,0 0 0 1px color-mix(in srgb,var(--ds-slate-950, #020617) 25%,transparent),0 24px 60px -18px var(--ds-shadow-color-25, rgb(2 6 23 / .6))}.mnt-island[data-state=collapsed]{width:auto;max-width:min(94vw,480px)}.mnt-row{display:flex;align-items:flex-start;gap:calc(var(--spacing, 4px) * 3.5);padding:calc(var(--spacing, 4px) * 4) calc(var(--spacing, 4px) * 3) calc(var(--spacing, 4px) * 3.5) calc(var(--spacing, 4px) * 4)}.mnt-island[data-state=collapsed] .mnt-row{align-items:center;gap:calc(var(--spacing, 4px) * 2.5);padding:calc(var(--spacing, 4px) * 1.5) calc(var(--spacing, 4px) * 1.5) calc(var(--spacing, 4px) * 1.5) calc(var(--spacing, 4px) * 1.5)}.mnt-orb{position:relative;flex-shrink:0;width:44px;height:44px}.mnt-island[data-state=collapsed] .mnt-orb{width:32px;height:32px}.mnt-orb-ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,var(--mnt-amber),color-mix(in srgb,var(--mnt-amber) 0%,transparent) 35%,color-mix(in srgb,var(--mnt-amber) 20%,transparent) 55%,var(--ds-amber-200, #ffe0a3) 80%,var(--mnt-amber));-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 2px));animation:mnt-spin 3.2s linear infinite}.mnt-orb-ping{position:absolute;inset:5px;border-radius:50%;animation:mnt-ping 2.4s cubic-bezier(0,0,.2,1) infinite}.mnt-orb-core{position:absolute;inset:5px;display:grid;place-items:center;border-radius:50%;color:var(--ds-amber-950, #3a2300);background:radial-gradient(circle at 30% 25%,var(--ds-amber-200, #ffd998),var(--mnt-amber) 58%,var(--ds-amber-600, #e38900));box-shadow:inset 0 1px #ffffff8c,0 6px 16px -4px color-mix(in srgb,var(--mnt-amber) 75%,transparent)}.mnt-island[data-state=collapsed] .mnt-orb-core{inset:4px}.mnt-orb-core svg{width:18px;height:18px;stroke-width:2.2;animation:mnt-tighten 4s ease-in-out infinite}.mnt-island[data-state=collapsed] .mnt-orb-core svg{width:13px;height:13px}.mnt-body,.mnt-compact{display:flex;flex:1;flex-direction:column;min-width:0}.mnt-compact{flex:0 1 auto}.mnt-kicker{display:inline-flex;align-items:center;gap:calc(var(--spacing, 4px) * 2);font-size:calc(var(--text-base, 1rem) * 11 / 16);font-weight:700;letter-spacing:.08em;line-height:16px;text-transform:uppercase;color:var(--mnt-amber-soft)}.mnt-kicker:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--mnt-amber);box-shadow:0 0 0 3px color-mix(in srgb,var(--mnt-amber) 22%,transparent);animation:mnt-live 1.6s ease-in-out infinite}.mnt-island[data-state=collapsed] .mnt-kicker{font-size:calc(var(--text-base, 1rem) * 10 / 16);line-height:14px}.mnt-island[data-state=collapsed] .mnt-kicker:before{display:none}.mnt-message{margin-top:var(--spacing, 4px);font-size:calc(var(--text-base, 1rem) * 14 / 16);font-weight:500;line-height:1.5;color:#ffffffeb;overflow-wrap:anywhere}.mnt-compact-message{max-width:250px;overflow:hidden;font-size:calc(var(--text-base, 1rem) * 12.5 / 16);line-height:17px;white-space:nowrap;text-overflow:ellipsis;color:#ffffffdb}.mnt-actions{display:flex;flex-shrink:0;gap:var(--spacing, 4px);margin-left:auto}.mnt-btn{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;color:#fff9;background:#ffffff0f;transition:color var(--ds-duration-fast, .15s),background-color var(--ds-duration-fast, .15s),transform var(--ds-duration-fast, .15s)}.mnt-btn:hover{color:#fff;background:#ffffff24}.mnt-btn:active{transform:scale(.92)}.mnt-btn:focus-visible{outline:2px solid var(--mnt-amber);outline-offset:2px}.mnt-btn svg{width:15px;height:15px}.mnt-foot{display:block;padding:0 calc(var(--spacing, 4px) * 4) calc(var(--spacing, 4px) * 4) calc(var(--spacing, 4px) * 7.5 + 44px);animation:mnt-fade-up calc(.36s * var(--ds-motion-scale, 1)) calc(80ms * var(--ds-motion-scale, 1)) cubic-bezier(.2,.8,.2,1) both}.mnt-timer{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--spacing, 4px) calc(var(--spacing, 4px) * 2.5)}.mnt-timer-label,.mnt-until{font-size:calc(var(--text-base, 1rem) * 12 / 16);color:#ffffff8c}.mnt-count{display:inline-flex;align-items:baseline;overflow:hidden;font:700 calc(var(--text-base, 1rem) * 22 / 16) / 1.1 var(--mnt-mono);letter-spacing:.01em;font-variant-numeric:tabular-nums;color:#fff}.mnt-count--compact{flex-shrink:0;padding:calc(var(--spacing, 4px) * 1.5) calc(var(--spacing, 4px) * 2.5);border-radius:999px;font-size:calc(var(--text-base, 1rem) * 12.5 / 16);color:var(--mnt-amber-soft);background:#00000047;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--mnt-amber) 28%,transparent)}.mnt-days{margin-right:.45em}.mnt-digit{display:inline-block;animation:mnt-roll calc(.38s * var(--ds-motion-scale, 1)) cubic-bezier(.2,.8,.2,1)}.mnt-sep{padding:0 .08em;opacity:.4}.mnt-progress{position:relative;display:block;height:6px;margin-top:calc(var(--spacing, 4px) * 3);overflow:hidden;border-radius:99px;background:#ffffff14}.mnt-progress>span{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:repeating-linear-gradient(-45deg,var(--mnt-amber) 0 6px,var(--ds-amber-300, #ffc453) 6px 12px);background-size:16.97px 100%;box-shadow:0 0 12px color-mix(in srgb,var(--mnt-amber) 55%,transparent);animation:mnt-tape .9s linear infinite;transition:width 1s linear}.mnt-progress[data-indeterminate]>span{opacity:.55}@keyframes mnt-spin{to{transform:rotate(360deg)}}@keyframes mnt-ping{0%{box-shadow:0 0 color-mix(in srgb,var(--mnt-amber) 50%,transparent)}70%,to{box-shadow:0 0 0 14px color-mix(in srgb,var(--mnt-amber) 0%,transparent)}}@keyframes mnt-tighten{0%,68%,to{transform:rotate(0)}75%{transform:rotate(-30deg)}83%{transform:rotate(14deg)}90%{transform:rotate(-6deg)}}@keyframes mnt-live{50%{opacity:.35}}@keyframes mnt-roll{0%{opacity:0;transform:translateY(60%);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}@keyframes mnt-tape{to{background-position:16.97px 0}}@keyframes mnt-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:520px){.mnt-foot{padding-left:calc(var(--spacing, 4px) * 4)}.mnt-compact-message{max-width:38vw}}@media(prefers-reduced-motion:reduce){.mnt-orb-ring,.mnt-orb-ping,.mnt-orb-core svg,.mnt-kicker:before,.mnt-digit,.mnt-progress>span,.mnt-foot{animation:none}.mnt-progress>span{transition:none}}.app-boot{--boot-scene: var(--ws-university-sidebar, #070e1d);--boot-accent: var(--ds-amber-500, #fda209);--boot-ok: var(--ds-emerald-400, #34d399);--boot-bad: var(--ds-red-400, #f87171);--boot-ink: var(--ds-slate-200, #d6e1f2);--boot-muted: color-mix(in srgb, var(--boot-ink) 50%, transparent);--boot-display: var(--ds-font-display, "Segoe UI Variable Display", "SF Pro Display", ui-sans-serif, system-ui, sans-serif);--boot-mono: var(--ds-font-mono, ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace);position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:100svh;overflow:hidden;padding:calc(var(--spacing, 4px) * 12) calc(var(--spacing, 4px) * 5) calc(var(--spacing, 4px) * 24);color:var(--ds-slate-100, #eef3fb);font-family:var(--ds-font-sans, "Segoe UI Variable Text", "SF Pro Text", ui-sans-serif, system-ui, sans-serif);background:radial-gradient(60% 45% at 50% -5%,color-mix(in srgb,var(--ds-blue-600, #2563eb) 18%,transparent),transparent 70%),radial-gradient(50% 40% at 50% 105%,color-mix(in srgb,var(--boot-accent) 7%,transparent),transparent 70%),var(--boot-scene)}.app-boot__ruling{position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(to bottom,transparent 0 51px,rgb(255 255 255 / .035) 51px 52px);-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000,transparent 78%);mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000,transparent 78%);pointer-events:none}.app-boot__stage{display:flex;flex-direction:column;align-items:center;width:min(100%,468px)}.app-boot__seal{position:relative;margin-bottom:calc(var(--spacing, 4px) * 5)}.app-boot[aria-busy=false] .app-boot__seal:after{content:"";position:absolute;inset:0;border:1.5px solid color-mix(in srgb,var(--boot-ok) 70%,transparent);border-radius:50%;opacity:0;pointer-events:none;animation:app-boot-confirm 1.1s cubic-bezier(.2,.6,.3,1) .15s}.app-boot .login-seal{--seal-size: 176px}.app-boot__institution{max-width:400px;margin:0 0 calc(var(--spacing, 4px) * 6.5);color:#fff;font-family:var(--boot-display);font-size:calc(var(--text-base, 1rem) * 21 / 16);font-weight:600;line-height:1.3;letter-spacing:-.015em;text-align:center;text-wrap:balance;animation:app-boot-rise calc(.6s * var(--ds-motion-scale, 1)) cubic-bezier(.2,.7,.2,1) calc(.15s * var(--ds-motion-scale, 1)) backwards}.app-boot__log{width:100%;overflow:hidden;border:1px solid rgb(255 255 255 / .09);border-radius:calc(var(--radius, 10px) + 8px);background:linear-gradient(180deg,color-mix(in srgb,var(--ds-slate-800, #15223c) 72%,transparent),color-mix(in srgb,var(--ds-slate-900, #0a1326) 80%,transparent));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 1px #ffffff0f,0 30px 60px -30px var(--ds-shadow-color-25, rgb(0 0 0 / .75));animation:app-boot-rise calc(.6s * var(--ds-motion-scale, 1)) cubic-bezier(.2,.7,.2,1) calc(.25s * var(--ds-motion-scale, 1)) backwards}.app-boot__log header{display:flex;align-items:center;justify-content:space-between;padding:calc(var(--spacing, 4px) * 3) calc(var(--spacing, 4px) * 4);border-bottom:1px solid rgb(255 255 255 / .07);color:var(--boot-muted);font-family:var(--boot-mono);font-size:calc(var(--text-base, 1rem) * 10.5 / 16);letter-spacing:.14em;text-transform:uppercase}.app-boot__stopwatch{color:#fff;font-size:calc(var(--text-base, 1rem) * 11.5 / 16);font-variant-numeric:tabular-nums;letter-spacing:.02em;text-transform:none}.app-boot__log ol{display:grid;grid-template-columns:18px max-content minmax(0,1fr) auto;column-gap:calc(var(--spacing, 4px) * 3);margin:0;padding:calc(var(--spacing, 4px) * 1.5) calc(var(--spacing, 4px) * 4) 2px;list-style:none}.app-boot__step{position:relative;display:grid;grid-column:1 / -1;grid-template-columns:subgrid;align-items:center;padding:calc(var(--spacing, 4px) * 2.5) 0;animation:app-boot-rise calc(.45s * var(--ds-motion-scale, 1)) cubic-bezier(.2,.7,.2,1) calc((.4s + var(--i) * .11s) * var(--ds-motion-scale, 1)) backwards}.app-boot__step[data-status=running]:before,.app-boot__step[data-status=done]:before{content:"";position:absolute;inset:0 calc(var(--spacing, 4px) * -4);pointer-events:none}.app-boot__step[data-status=running]:before{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--boot-accent) 8%,transparent) 45%,color-mix(in srgb,var(--boot-accent) 14%,transparent) 50%,transparent 60%);background-size:220% 100%;animation:app-boot-sweep 1.6s linear infinite}.app-boot__step[data-status=done]:before{background:color-mix(in srgb,var(--boot-ok) 10%,transparent);opacity:0;animation:app-boot-flash calc(.9s * var(--ds-motion-scale, 1)) ease-out calc((.45s + var(--i) * .11s) * var(--ds-motion-scale, 1)) backwards}.app-boot__step-label{color:#fff;font-size:calc(var(--text-base, 1rem) * 13.5 / 16);font-weight:500;white-space:nowrap;transition:color var(--ds-duration-base, .3s)}.app-boot__step-detail{overflow:hidden;color:var(--boot-muted);font-family:var(--boot-mono);font-size:calc(var(--text-base, 1rem) * 11 / 16);text-overflow:ellipsis;white-space:nowrap}.app-boot__step-time{color:color-mix(in srgb,var(--boot-ink) 72%,transparent);font-family:var(--boot-mono);font-size:calc(var(--text-base, 1rem) * 11 / 16);font-variant-numeric:tabular-nums}.app-boot__step[data-status=waiting] .app-boot__step-label{color:color-mix(in srgb,var(--ds-slate-100, #f1f5fb) 45%,transparent)}.app-boot__step[data-status=running] .app-boot__step-detail{color:var(--ds-amber-300, #ffc766)}.app-boot__step[data-status=failed] .app-boot__step-detail{color:var(--boot-bad)}.app-boot__glyph{position:relative;display:grid;place-items:center;width:18px;height:18px;border-radius:50%}.app-boot__step[data-status=waiting] .app-boot__glyph{border:1.5px dashed rgb(255 255 255 / .22)}.app-boot__step[data-status=running] .app-boot__glyph{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--boot-accent) 18%,transparent)}.app-boot__step[data-status=running] .app-boot__glyph:before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(transparent 0 30%,var(--boot-accent));-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));animation:app-boot-spin .9s linear infinite}.app-boot__step[data-status=running] .app-boot__glyph:after{content:"";width:5px;height:5px;border-radius:50%;background:var(--boot-accent);box-shadow:0 0 10px var(--boot-accent);animation:app-boot-breathe 1.2s ease-in-out infinite}.app-boot__step[data-status=done] .app-boot__glyph{background:color-mix(in srgb,var(--boot-ok) 16%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--boot-ok) 45%,transparent)}.app-boot__step[data-status=failed] .app-boot__glyph{background:color-mix(in srgb,var(--boot-bad) 16%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--boot-bad) 50%,transparent)}.app-boot__glyph svg{width:12px;height:12px;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.app-boot__step[data-status=done] .app-boot__glyph svg{stroke:var(--boot-ok);stroke-dasharray:1;animation:app-boot-draw calc(.4s * var(--ds-motion-scale, 1)) ease-out calc((.5s + var(--i) * .11s) * var(--ds-motion-scale, 1)) backwards}.app-boot[data-revealed] .app-boot__step[data-status=done] .app-boot__glyph svg,.app-boot[data-revealed] .app-boot__step[data-status=done]:before{animation-delay:0s}.app-boot__step[data-status=failed] .app-boot__glyph svg{stroke:var(--boot-bad)}.app-boot__rail{height:2px;margin:calc(var(--spacing, 4px) * 1.5) calc(var(--spacing, 4px) * 4) calc(var(--spacing, 4px) * 3.5);overflow:hidden;border-radius:2px;background:#ffffff14}.app-boot__rail i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ds-blue-600, #2563eb),var(--ds-cyan-600, #12a5b8) 55%,var(--boot-accent));box-shadow:0 0 12px color-mix(in srgb,var(--boot-accent) 50%,transparent);transition:width var(--ds-duration-base, .6s) var(--ds-ease, cubic-bezier(.2, .7, .2, 1))}.app-boot[data-failed] .app-boot__rail i{background:linear-gradient(90deg,var(--ds-blue-600, #2563eb),var(--ds-cyan-600, #12a5b8) 55%,var(--boot-bad));box-shadow:0 0 12px color-mix(in srgb,var(--boot-bad) 45%,transparent)}.app-boot__alert{width:100%;margin-top:calc(var(--spacing, 4px) * 3.5);padding:calc(var(--spacing, 4px) * 4) calc(var(--spacing, 4px) * 4.5);border:1px solid color-mix(in srgb,var(--boot-bad) 32%,transparent);border-radius:calc(var(--radius, 10px) + 6px);background:linear-gradient(180deg,color-mix(in srgb,var(--ds-red-900, #7f1d1d) 28%,transparent),color-mix(in srgb,var(--ds-red-950, #450a0a) 30%,transparent));animation:app-boot-rise calc(.5s * var(--ds-motion-scale, 1)) cubic-bezier(.2,.7,.2,1) backwards}.app-boot__alert h2{margin:0;color:#fff;font-family:var(--boot-display);font-size:calc(var(--text-base, 1rem) * 15.5 / 16);font-weight:600;letter-spacing:-.01em}.app-boot__alert p{margin:calc(var(--spacing, 4px) * 1.5) 0 0;color:color-mix(in srgb,var(--ds-red-100, #fee2e2) 82%,transparent);font-size:calc(var(--text-base, 1rem) * 13 / 16);line-height:1.5}.app-boot__actions{display:flex;flex-wrap:wrap;gap:calc(var(--spacing, 4px) * 2.5);margin-top:calc(var(--spacing, 4px) * 3.5)}.app-boot__retry,.app-boot__signout{display:inline-flex;align-items:center;gap:calc(var(--spacing, 4px) * 2);height:40px;padding:0 calc(var(--spacing, 4px) * 4);border-radius:calc(var(--radius, 10px) + 2px);font-family:inherit;font-size:calc(var(--text-base, 1rem) * 13.5 / 16);font-weight:600;cursor:pointer;transition:transform var(--ds-duration-fast, .18s),background var(--ds-duration-fast, .18s),border-color var(--ds-duration-fast, .18s)}.app-boot__retry{border:0;background:var(--card, #fff);color:var(--ds-slate-900, #0b1526);box-shadow:0 8px 20px -10px var(--ds-shadow-color-25, rgb(0 0 0 / .6))}.app-boot__retry:hover{transform:translateY(-1px)}.app-boot__signout{border:1px solid rgb(255 255 255 / .16);background:#ffffff0a;color:var(--ds-slate-200, #e2e8f0)}.app-boot__signout:hover{border-color:#ffffff4d;background:#ffffff14}.app-boot__retry:focus-visible,.app-boot__signout:focus-visible{outline:2px solid var(--boot-accent);outline-offset:3px}.app-boot__footer{position:absolute;left:0;right:0;bottom:26px;display:flex;align-items:center;justify-content:center;gap:calc(var(--spacing, 4px) * 3)}.app-boot__footer img{width:auto;height:26px;opacity:.92}.app-boot__footer span{color:color-mix(in srgb,var(--boot-ink) 40%,transparent);font-family:var(--boot-mono);font-size:calc(var(--text-base, 1rem) * 10 / 16);letter-spacing:.14em;text-transform:uppercase}@keyframes app-boot-rise{0%{opacity:0;translate:0 8px}}@keyframes app-boot-spin{to{transform:rotate(360deg)}}@keyframes app-boot-breathe{50%{opacity:.35;scale:.7}}@keyframes app-boot-sweep{0%{background-position:120% 0}to{background-position:-100% 0}}@keyframes app-boot-flash{0%{opacity:1}to{opacity:0}}@keyframes app-boot-confirm{0%{opacity:.9;transform:scale(.72)}to{opacity:0;transform:scale(1.45)}}@keyframes app-boot-draw{0%{stroke-dashoffset:1}}@media(max-width:480px){.app-boot .login-seal{--seal-size: 140px}.app-boot__institution{font-size:calc(var(--text-base, 1rem) * 18 / 16)}.app-boot__log ol{grid-template-columns:18px max-content minmax(0,1fr)}.app-boot__step-time{display:none}}@media(max-height:640px){.app-boot .login-seal{--seal-size: 128px}.app-boot__footer{display:none}}@media(prefers-reduced-motion:reduce){.app-boot *,.app-boot *:before,.app-boot *:after{animation:none!important;transition:none!important}}
