@import"https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap";*{box-sizing:border-box;margin:0;padding:0}html{height:100%;overflow:hidden}body{background:#000810;color:#c8e6f0;font-family:Share Tech Mono,Courier New,monospace;font-size:19px;line-height:1.5}#app,body{height:100vh;overflow:hidden}#app{position:relative}#app:before{background:repeating-linear-gradient(0deg,rgba(0,0,0,.1),rgba(0,0,0,.1) 1px,transparent 0,transparent 3px);content:"";height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1000}.main-nav{background:#000810;border-bottom:1px solid #c8e6f0;position:sticky;top:0;z-index:100}.nav-container{align-items:center;display:grid;grid-template-columns:1fr auto 1fr;padding:.75rem 1.5rem}.app-title{color:#c8e6f0;font-size:1.5rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase}.nav-links{display:flex;gap:.25rem}.nav-link{border:1px solid transparent;color:#c8e6f0;font-size:1.08rem;letter-spacing:.1em;padding:.25rem .75rem;text-decoration:none;text-transform:uppercase}.nav-link:hover{border-color:#c8e6f0}.nav-link.router-link-active{background:#c8e6f0;color:#000810}.main-content{height:calc(100vh - 3.5rem);overflow:hidden;position:relative}.auth-gate{align-items:center;color:#c8e6f0;display:flex;font-family:Share Tech Mono,Courier New,monospace;font-size:1.2rem;height:100%;justify-content:center;opacity:.5}.loading-cursor{animation:blink 1s step-end infinite}.auth-section{align-items:center;display:flex;gap:1rem;justify-content:flex-end}.loading-text{color:#c8e6f0;font-size:1.08rem}.loading-text:after{animation:blink 1s step-end infinite;content:"_"}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.login-btn{background:transparent;border:1px solid #c8e6f0;color:#c8e6f0;cursor:pointer;font-family:Share Tech Mono,Courier New,monospace;font-size:1.08rem;letter-spacing:.1em;padding:.25rem 1rem;text-transform:uppercase}.login-btn:hover{background:#c8e6f0;color:#000810}.settings-dropdown{position:relative}.settings-btn{align-items:center;background:transparent;border:none;color:#c8e6f0;cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.settings-btn:hover{opacity:.7}.dropdown-menu{background:#000810;border:1px solid #c8e6f0;min-width:220px;position:absolute;right:0;top:calc(100% + .25rem);z-index:200}.dropdown-item{background:transparent;border:none;color:#c8e6f0;cursor:pointer;display:block;font-family:Share Tech Mono,Courier New,monospace;font-size:1.08rem;padding:.5rem .75rem;text-align:left;width:100%}.dropdown-item.user-info{cursor:default;opacity:.7}.dropdown-item.user-info:before{content:"USER: "}.dropdown-item.endpoint-info{cursor:default;font-size:.85rem;opacity:.55;padding:.25rem .75rem;word-break:break-all}.dropdown-item.endpoint-info:last-of-type{border-bottom:1px solid #c8e6f0;padding-bottom:.5rem}.dropdown-item.logout-item:before{content:"> "}.dropdown-item.logout-item:hover{background:#c8e6f0;color:#000810}.error-text{color:#f44;font-size:1.08rem}.error-text:before{content:"ERROR: "}.retry-btn{background:transparent;border:1px solid #f44;color:#f44;cursor:pointer;font-family:Share Tech Mono,Courier New,monospace;font-size:1.08rem;padding:.25rem 1rem;text-transform:uppercase}.retry-btn:hover{background:#f44;color:#000810}.utc-clock{color:#c8e6f0;cursor:pointer;font-size:1.02rem;letter-spacing:.05em;opacity:.8}.utc-clock:hover{opacity:1}.toast{align-items:center;background:#c8e6f0;border:1px solid #c8e6f0;color:#000810;display:flex;font-size:1.02rem;gap:.5rem;justify-content:center;left:50%;letter-spacing:.1em;min-width:400px;padding:.5rem 1rem;position:fixed;text-align:center;text-transform:uppercase;top:4rem;transform:translate(-50%);z-index:1001}.toast-icon{flex-shrink:0}.toast-error{background:#f44;border-color:#f44;color:#000810}.toast-dismiss{align-items:center;background:transparent;border:none;color:inherit;cursor:pointer;display:flex;margin-left:.5rem;padding:0}.toast-dismiss:hover{opacity:.7}.toast-fade-enter-active{transition:opacity .2s ease}.toast-fade-leave-active{transition:opacity .5s ease}.toast-fade-enter-from,.toast-fade-leave-to{opacity:0}
