.vi-app-splash,#app-splash{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background-color:var(--vi-splash-bg,#fff);pointer-events:none}@media(prefers-color-scheme:dark){.vi-app-splash,#app-splash{background-color:var(--vi-splash-bg,#1e1e1e)}}html.vi-theme-ready #app-splash,html.vi-theme-ready .vi-app-splash{display:none}.vi-app-splash-default{position:relative;width:100%;height:100%}.vi-app-splash-default::before{content:"";position:absolute;inset:0;background-image:var(--vi-splashimg-light,none);background-repeat:no-repeat;background-position:center center;background-size:clamp(120px,20vmin,320px)}@media(prefers-color-scheme:dark){.vi-app-splash-default::before{background-image:var(--vi-splashimg-dark,var(--vi-splashimg-light,none))}}html.vi-reconnect-reload #app-splash,html.vi-reconnect-reload .splash-screen,html.vi-reconnect-reload .vi-app-splash{display:none!important}.components-reconnect-first-attempt-visible,.components-reconnect-repeated-attempt-visible,.components-reconnect-failed-visible,.components-pause-visible,.components-resume-failed-visible,.components-rejoining-animation{display:none}.components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible,.components-reconnect-modal.components-reconnect-show .components-rejoining-animation,.components-reconnect-modal.components-reconnect-paused .components-pause-visible,.components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible,.components-reconnect-modal.components-reconnect-retrying,.components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible,.components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation,.components-reconnect-modal.components-reconnect-failed,.components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible{display:block}.vi-session-expired-visible{display:none}.components-reconnect-modal.vi-session-expired .components-reconnect-container>*{display:none}.components-reconnect-modal.vi-session-expired .components-reconnect-container>.vi-session-expired-visible{display:block}.vi-session-expired-notice{position:fixed;top:1rem;left:50%;transform:translateX(-50%);z-index:2000;max-width:calc(100vw - 2rem);display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:4px;background-color:rgba(var(--mud-palette-surface-rgb),1);color:var(--mud-palette-text-primary);box-shadow:0 3px 12px rgba(0,0,0,.35);transition:opacity .5s}.vi-session-expired-notice.vi-fading{opacity:0}.vi-session-expired-notice button{border:0;background:none;color:inherit;font-size:1.25rem;line-height:1;cursor:pointer}.components-reconnect-modal{background-color:rgba(var(--mud-palette-surface-rgb),1)!important;color:var(--mud-palette-text-primary);width:20rem;margin:20vh auto;padding:2rem;border:0;border-radius:.5rem;box-shadow:0 3px 6px 2px rgba(0,0,0,.3);opacity:0;transition:display .5s allow-discrete,overlay .5s allow-discrete;animation:components-reconnect-modal-fadeOutOpacity .5s both}.components-reconnect-modal[open]{animation:components-reconnect-modal-slideUp 1.5s cubic-bezier(.05,.89,.25,1.02) .3s,components-reconnect-modal-fadeInOpacity .5s ease-in-out .3s;animation-fill-mode:both}.components-reconnect-modal::backdrop{background-color:rgba(0,0,0,.4);animation:components-reconnect-modal-fadeInOpacity .5s ease-in-out;opacity:1}@keyframes components-reconnect-modal-slideUp{0%{transform:translateY(30px) scale(.95)}100%{transform:translateY(0)}}@keyframes components-reconnect-modal-fadeInOpacity{0%{opacity:0}100%{opacity:1}}@keyframes components-reconnect-modal-fadeOutOpacity{0%{opacity:1}100%{opacity:0}}.components-reconnect-container{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:1rem}.components-reconnect-modal p{margin:0;text-align:center}.components-reconnect-modal button{border:0;background-color:#6b9ed2;color:#fff;padding:4px 24px;border-radius:4px}.components-reconnect-modal button:hover{background-color:#3b6ea2}.components-reconnect-modal button:active{background-color:#6b9ed2}.components-rejoining-animation{position:relative;width:80px;height:80px}.components-rejoining-animation div{position:absolute;border:3px solid #0087ff;opacity:1;border-radius:50%;animation:components-rejoining-animation 1.5s cubic-bezier(0,.2,.8,1) infinite}.components-rejoining-animation div:nth-child(2){animation-delay:-.5s}@keyframes components-rejoining-animation{0%{top:40px;left:40px;width:0;height:0;opacity:0}4.9%{top:40px;left:40px;width:0;height:0;opacity:0}5%{top:40px;left:40px;width:0;height:0;opacity:1}100%{top:0;left:0;width:80px;height:80px;opacity:0}}@keyframes spin-slowing-spin{0%{transform:rotate(0deg)}50%{transform:rotate(180deg)}75%{transform:rotate(290deg)}100%{transform:rotate(360deg)}}.collapsed-panel{padding:0 18px;background-color:#fff;max-height:0;overflow:hidden;transition:max-height .2s ease-out}.uncollapsed-panel{padding:0 18px;background-color:#fff;max-height:50rem;overflow:hidden;transition:max-height .2s ease-out}.vi-session-warn-toast{position:fixed;top:1rem;right:1rem;min-width:16rem;max-width:22rem;padding:.75rem 1rem;border-radius:.5rem;background-color:var(--mud-palette-surface,#fff);color:var(--mud-palette-text-primary,#111);box-shadow:0 3px 8px rgba(0,0,0,.25);display:none;z-index:1000;font-size:.9rem;line-height:1.4}.vi-session-warn-toast.vi-session-warn-toast--visible{display:flex;flex-direction:column;gap:.5rem}.vi-session-warn-toast .vi-session-warn-label{font-weight:600}.vi-session-warn-toast button{border:0;border-radius:.25rem;padding:.25rem .75rem;cursor:pointer}.vi-session-warn-toast .vi-session-warn-extend{background-color:#6b9ed2;color:#fff}.vi-session-warn-toast .vi-session-warn-extend:hover{background-color:#3b6ea2}.vi-session-warn-toast .vi-session-warn-signout{background-color:transparent;color:var(--mud-palette-text-primary,#111);text-align:left;padding-left:0}.vi-session-warn-toast .vi-session-warn-signout:hover{text-decoration:underline}.vi-tab-limit-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background-color:rgba(0,0,0,.55);color:var(--mud-palette-text-primary,#111)}.vi-tab-limit-panel{background-color:var(--mud-palette-surface,#fff);padding:1.5rem 2rem;border-radius:.5rem;max-width:30rem;box-shadow:0 6px 16px rgba(0,0,0,.35);text-align:center}.vi-tab-limit-panel h2{margin:0 0 .5rem 0;font-size:1.25rem}.vi-tab-limit-panel p{margin:0}.vi-tab-limit-panel .vi-tab-limit-goto{margin:1rem auto .5rem;border:0;border-radius:.25rem;padding:.5rem 1.25rem;cursor:pointer;background-color:#6b9ed2;color:#fff;font-size:.95rem}.vi-tab-limit-panel .vi-tab-limit-goto:hover{background-color:#3b6ea2}.vi-tab-limit-panel .vi-tab-limit-goto:active{background-color:#6b9ed2}.vi-tab-limit-panel .vi-tab-limit-hint{margin-top:.5rem;font-size:.85rem;opacity:.75}html.vi-tab-limit #components-reconnect-modal,html.vi-tab-limit .components-reconnect-modal{display:none!important}.alert{position:relative;padding:1rem 1rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem;color:var(--mud-dark-palette-text-primary)}.alert b,.alert strong{font-weight:400}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--mud-palette-gray-light)}.alert-dismissible{padding-right:3rem}.alert-danger{background-color:var(--mud-palette-error);border-color:rgba(var(--mud-palette-error-rgb),var(--mud-palette-border-opacity))}.alert-warning{background-color:var(--mud-palette-warning);border-color:rgba(var(--mud-palette-warning-rgb),var(--mud-palette-border-opacity))}.alert-success{background-color:var(--mud-palette-success);border-color:rgba(var(--mud-palette-success-rgb),var(--mud-palette-border-opacity))}.alert-info{background-color:var(--mud-palette-info);border-color:rgba(var(--mud-palette-info-rgb),var(--mud-palette-border-opacity))}.alert-primary{color:var(--mud-palette-primary-text);background-color:var(--mud-palette-primary);border-color:rgba(var(--mud-palette-primary-rgb),var(--mud-palette-border-opacity))}.alert-secondary{color:var(--mud-palette-secondary-text);background-color:var(--mud-palette-secondary);border-color:rgba(var(--mud-palette-secondary-rgb),var(--mud-palette-border-opacity))}.alert-dark{color:var(--mud-dark-palette-text-primary);background-color:var(--mud-palette-dark);border-color:rgba(var(--mud-palette-dark-rgb),var(--mud-palette-border-opacity))}.alert-light{color:var(--mud-light-palette-text-primary);background-color:color-mix(in srgb,var(--mud-palette-gray-default) 12%,transparent);border-color:color-mix(in srgb,var(--mud-palette-gray-default) 30%,transparent)}.alert-light .alert-link{color:var(--mud-palette-gray-darker)}.fade{transition:opacity .15s linear}.fade:not(.show){opacity:0}@media(prefers-reduced-motion:reduce){.fade{transition:none}}.modal{position:fixed;top:0;left:0;z-index:1055;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}@media(prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal-dialog-scrollable{height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;flex-shrink:0;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}@media(min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{height:calc(100% - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}}