loader{position:fixed;top:0;left:0;right:0;bottom:0;background:#fffffff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;animation:loader-fade-in .2s ease-out forwards}body.app-transitioning loader{display:none!important}[data-theme=dark] loader{background:#121212f2}.loader{width:50px;aspect-ratio:1;display:grid;border:4px solid transparent;border-radius:50%;border-right-color:#2196f3;animation:l15 1s infinite linear;box-shadow:0 0 20px #2196f31a}.loader:before,.loader:after{content:"";grid-area:1/1;margin:2px;border:inherit;border-radius:50%;animation:l15 2s infinite}.loader:after{margin:8px;animation-duration:3s}@keyframes l15{to{transform:rotate(1turn)}}@keyframes loader-fade-in{0%{opacity:0}to{opacity:1}}.loader-error{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;max-width:400px;padding:0 24px}.loader-error-icon{width:48px;height:48px;border-radius:50%;background:#d32f2f;color:#fff;font-size:28px;font-weight:700;line-height:48px;text-align:center}.loader-error-message{color:#000000b3;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5;word-break:break-word}[data-theme=dark] .loader-error-message{color:#ffffffb3}.loader-error-retry{padding:8px 24px;border:none;border-radius:4px;background:#2196f3;color:#fff;font-size:14px;font-weight:500;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background .15s}.loader-error-retry:hover{background:#1976d2}@media (prefers-reduced-motion: reduce){loader{animation:none;opacity:1}.loader,.loader:before,.loader:after{animation:none!important}}.app-transition-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;pointer-events:all;overflow:hidden;background:#f5f5f5}[data-theme=dark] .app-transition-overlay{background:#121212}.app-transition-snapshot{z-index:1}.app-transition-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.8);opacity:0;transition:opacity .3s ease-out,transform .3s ease-out;pointer-events:none;z-index:10}.app-transition-spinner{width:48px;height:48px;border-radius:50%;border:3px solid rgba(33,150,243,.15);border-top-color:#2196f3;animation:spin .8s linear infinite}.app-transition-loading .app-transition-loader{opacity:1;transform:translate(-50%,-50%) scale(1)}@keyframes spin{to{transform:rotate(360deg)}}[data-theme=dark] .app-transition-spinner{border-color:#64b4ff26;border-top-color:#64b5f6}body.app-transitioning{overflow:hidden}body.app-transitioning:has(.app-transition-switcher) [id^=single-spa-application]{opacity:0;pointer-events:none}body.app-transitioning:has(.app-transition-blur.app-transition-ending) [id^=single-spa-application]{opacity:1;transition:opacity var(--transition-duration, .4s) var(--transition-easing, cubic-bezier(.4, 0, .2, 1))}body.app-transitioning:has(.app-transition-switcher.app-transition-ending) [id^=single-spa-application]{opacity:1;transition:none}.app-transition-fade{position:absolute;top:0;left:0;right:0;bottom:0;background:#fff0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);transition:background .4s cubic-bezier(.4,0,.2,1),backdrop-filter .4s cubic-bezier(.4,0,.2,1);pointer-events:none;z-index:2}.app-transition-blur.app-transition-active .app-transition-fade{background:#ffffff26;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}[data-theme=dark] .app-transition-blur.app-transition-active .app-transition-fade{background:#00000026}.app-transition-blur.app-transition-ending{opacity:0;transition:opacity var(--transition-duration, .6s) var(--transition-easing)}.app-transition-blur.app-transition-ending .app-transition-loader{opacity:0;transform:translate(-50%,-50%) scale(1.1);transition:opacity .2s ease-in}.app-transition-switcher{background:transparent}.app-transition-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:transparent;pointer-events:none}.app-transition-body-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:red;pointer-events:none;transition:background-color .42s cubic-bezier(.2,0,0,1) .15s}.app-transition-bg-from{opacity:.1;transition:opacity .36s cubic-bezier(.2,0,0,1)}.app-transition-bg-to{opacity:0;z-index:1;transition:opacity .36s cubic-bezier(.2,0,0,1),background-color .56s cubic-bezier(.4,0,.2,1)}.app-transition-switcher.app-transition-bg-crossfade .app-transition-bg-from,.app-transition-switcher.app-transition-revealing .app-transition-bg-from{opacity:0}.app-transition-switcher.app-transition-bg-crossfade .app-transition-bg-to{opacity:.12}.app-transition-switcher.app-transition-revealing .app-transition-bg-to{opacity:.1}.app-transition-switcher.app-transition-ending .app-transition-bg-from,.app-transition-switcher.app-transition-ending .app-transition-bg-to{opacity:0}:root{--switcher-zoomed-card-radius: 16px}@media (max-width: 768px) and (pointer: coarse){:root{--switcher-zoomed-card-radius: 34px}}.switcher-stage{position:absolute;top:0;left:0;width:100%;height:200vh;z-index:3;will-change:transform;transform:translateY(0)}.switcher-stage-horizontal{width:200vw;height:100vh;display:flex;transform:translate(0)}.switcher-stage-reverse-vertical{transform:translateY(-100vh)}.switcher-stage-reverse-horizontal{transform:translate(-100vw)}.switcher-card{width:100%;height:100vh;position:relative;overflow:hidden;will-change:transform,border-radius}.switcher-card-horizontal{width:100vw;height:100vh;flex:0 0 100vw}.switcher-card-old{transform-origin:center center;transform:scale(1);border-radius:0;transition:transform .5s cubic-bezier(.4,0,.2,1),border-radius .5s cubic-bezier(.4,0,.2,1)}.switcher-card-old:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000;transition:background .5s cubic-bezier(.4,0,.2,1);pointer-events:none;z-index:2;border-radius:inherit}.switcher-card-new{transform-origin:center center;transform:scale(.86);border-radius:var(--switcher-zoomed-card-radius);background:transparent;transition:none}.switcher-card-new:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000014;opacity:1;pointer-events:none;border-radius:inherit;transition:opacity .28s ease-out,background .28s ease-out}[data-theme=dark] .switcher-card-new:after{background:#ffffff14}.app-transition-switcher.app-transition-active .switcher-card-old{transform:scale(.85);border-radius:var(--switcher-zoomed-card-radius)}.app-transition-switcher.app-transition-active .switcher-card-old:after{background:#00000026}[data-theme=dark] .app-transition-switcher.app-transition-active .switcher-card-old:after{background:#0000004d}.app-transition-switcher:not(.app-transition-slide).app-transition-scrolling .switcher-stage{transform:translateY(-100vh);transition:transform .56s cubic-bezier(.4,0,.2,1)}.app-transition-switcher.app-transition-reverse:not(.app-transition-slide).app-transition-scrolling .switcher-stage{transform:translateY(0);transition:transform .56s cubic-bezier(.4,0,.2,1)}.app-transition-slide.app-transition-scrolling .switcher-stage-horizontal{transform:translate(-100vw);transition:transform .56s cubic-bezier(.4,0,.2,1)}.app-transition-slide.app-transition-reverse.app-transition-scrolling .switcher-stage-horizontal{transform:translate(0);transition:transform .56s cubic-bezier(.4,0,.2,1)}.app-transition-switcher.app-transition-scrolling .switcher-card-new{transform:scale(.86);border-radius:var(--switcher-zoomed-card-radius)}.app-transition-switcher.app-transition-revealing .switcher-card-new{transform:scale(1);border-radius:0;transition:transform .42s cubic-bezier(.2,0,0,1) .15s,border-radius .42s cubic-bezier(.2,0,0,1) .15s}.app-transition-switcher.app-transition-revealing .switcher-card-new:after{opacity:0}.app-transition-switcher.app-transition-ending{opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.app-transition-switcher.app-transition-ending .app-transition-loader{opacity:0;transition:opacity .15s ease-in}@media (prefers-reduced-motion: reduce){.app-transition-overlay *,.app-transition-ending,.switcher-stage,.switcher-card,.switcher-card-old,.switcher-card-old:after,.switcher-card-new{transition:none!important;animation:none!important}}
