@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800&display=swap";:root{color:#111f4b;background:#ebf0fe;font-family:Nunito,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-width:320px;background:#ebf0fe}body{min-width:320px;min-height:100vh;margin:0;background:#ebf0fe}button,input,textarea{font:inherit}button{border:0}button:not(:disabled){cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(57,106,252,.35);outline-offset:3px}.app-shell{min-height:100vh}.pre-header{height:32px;background:#111f4b;color:#fffc;font-size:.76rem}.pre-header-inner{display:flex;align-items:center;justify-content:space-between;width:min(1180px,calc(100% - 2.5rem));height:100%;margin:auto}.pre-header i{margin-right:.3rem;color:#39ccfc}.pre-header-status i{color:#55d8a5;font-size:.55rem}.topbar{position:relative;z-index:10;display:flex;align-items:center;gap:1.5rem;width:min(1180px,calc(100% - 2.5rem));height:76px;margin:auto}.brand{display:inline-flex;align-items:center;gap:.55rem;color:#111f4b;font-size:1.28rem;font-weight:800;letter-spacing:-.06em;text-decoration:none}.brand-mark{display:grid;width:2rem;height:2rem;place-items:center;border-radius:6px;background:#396afc;box-shadow:0 4px 8px #0744fb40;color:#fff;font-size:.86rem;letter-spacing:0}.brand-subtitle{color:#396afc}.main-nav{display:flex;gap:.25rem;margin-left:auto}.main-nav a{padding:.55rem .75rem;border-radius:6px;color:#526084;font-size:.88rem;font-weight:700;text-decoration:none;transition:.25s}.main-nav i{margin-right:.35rem;color:#396afc}.main-nav a:hover,.main-nav a.router-link-active{background:#396afc1a;color:#396afc}.session-control{position:relative}.session-button{display:inline-flex;align-items:center;gap:.42rem;padding:.55rem .75rem;border:2px solid #396afc;border-radius:6px;background:transparent;box-shadow:0 4px 8px #0744fb26;color:#396afc;font-size:.8rem;font-weight:700;transition:.25s}.session-button:hover{background:#396afc;color:#fff}.connection-dot{width:.42rem;height:.42rem;border-radius:50%;background:#93a0bd}.connection-dot.online{background:#52ca9c;box-shadow:0 0 0 3px #52ca9c29}.session-popover{position:absolute;top:calc(100% + .6rem);right:0;width:min(22rem,calc(100vw - 2rem));padding:1.2rem;border-radius:8px;background:#fff;box-shadow:0 16px 35px #111f4b2e}.session-popover h2{margin:.15rem 0 .35rem;font-size:1.12rem}.session-popover .muted{margin-bottom:1rem;font-size:.82rem}.session-popover label{margin-top:.8rem}.session-actions{display:flex;margin-top:.9rem}.page-view{width:min(1180px,calc(100% - 2.5rem));padding:3.3rem 0 4.5rem;margin:auto}.page-heading,.console-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:2rem}.eyebrow,.vm-id,.resource-key{margin:0 0 .38rem;color:#396afc;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,p{margin-top:0}h1,h2{color:#111f4b}h1{margin-bottom:.65rem;font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:-.055em}h2{letter-spacing:-.025em}.lede{max-width:43rem;margin-bottom:0;color:#627093;line-height:1.6}.muted,.field-hint{color:#7180a2;line-height:1.5}.muted{margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:.38rem;min-height:2.55rem;padding:.55rem .85rem;border:2px solid #396afc;border-radius:6px;background:#396afc;box-shadow:0 4px 8px #0744fb40;color:#ffffffe6;font-size:.84rem;font-weight:700;line-height:1.1;text-align:center;text-decoration:none;transition:.25s}.button:hover:not(:disabled){border-color:#335fe2;background:#335fe2;color:#fff;transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.6}.button-ghost,.button-secondary{border-color:#396afc;background:transparent;color:#396afc}.button-ghost:hover:not(:disabled),.button-secondary:hover:not(:disabled){background:#396afc14;color:#335fe2}.button-danger{border-color:#e85d75;background:#e85d75;box-shadow:0 4px 8px #e85d7533}.button-danger:hover:not(:disabled){border-color:#ce4861;background:#ce4861}.button-small{min-height:2.2rem;padding:.42rem .6rem;font-size:.74rem}.refresh-button{flex:0 0 auto}.text-button{padding:.15rem 0;background:transparent;color:#396afc;font-size:.8rem;font-weight:800}.text-button:hover:not(:disabled){color:#335fe2;text-decoration:underline}.text-button:disabled{cursor:wait;opacity:.55}.text-button i{margin-right:.22rem}.alert{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:0 0 1.25rem;padding:.78rem .95rem;border-radius:6px;box-shadow:0 4px 8px #111f4b14;font-size:.86rem;line-height:1.4}.alert-success{background:#dff8ef;color:#177451}.alert-error{background:#ffe4e8;color:#b13f54}.alert.compact{margin:1rem 0 0;padding:.65rem .75rem;font-size:.8rem}.vm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.vm-card,.panel,.resource-card,.overview-summary,.empty-state{border:1px solid rgba(57,106,252,.12);background:#fff;box-shadow:0 10px 24px #111f4b14}.vm-card{padding:1.25rem;border-radius:8px}.vm-card:hover{box-shadow:0 14px 28px #111f4b1f}.vm-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.vm-card h2{margin:0;overflow-wrap:anywhere;font-size:1.1rem}.status-chip{display:inline-flex;flex:0 0 auto;align-items:center;gap:.38rem;padding:.32rem .5rem;border-radius:99px;background:#eef1f8;color:#677493;font-size:.72rem;font-weight:800}.status-chip>span{width:.42rem;height:.42rem;border-radius:50%;background:#8c98b2}.status-chip.status-running{background:#e2f8ef;color:#177451}.status-chip.status-running>span{background:#33bf87}.status-chip.status-stopped{background:#fff1e2;color:#b96e22}.status-chip.status-stopped>span{background:#efa45a}.vm-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem .75rem;margin:1.45rem 0}.vm-facts div{min-width:0}.vm-facts dt,.metrics-facts dt{margin-bottom:.22rem;color:#8a96b0;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.vm-facts dd{overflow-wrap:anywhere;margin:0;color:#334269;font-size:.83rem;line-height:1.4}.vm-actions,.vm-utility-actions{display:flex;flex-wrap:wrap;gap:.45rem}.vm-utility-actions{gap:1rem;margin-top:1rem}.rdns-form,.reinstall-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}.rdns-form .section-divider,.rdns-form>div:nth-child(2),.rdns-form>button,.reinstall-form .section-divider,.reinstall-form>div:nth-child(2),.reinstall-form .reinstall-actions{grid-column:1/-1}.reinstall-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:end}.section-divider{height:1px;margin:.1rem 0 .2rem;background:#e3e8f5}.metrics-panel{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.8rem .85rem;border-radius:6px;background:#f5f7fd}.form-title{margin:0 0 .2rem;color:#111f4b;font-size:.9rem;font-weight:800}.field-hint{margin:0;font-size:.78rem}.metrics-facts{display:flex;flex-wrap:wrap;gap:.7rem 1.3rem;margin:.5rem 0 0}.metrics-facts div{display:grid;gap:.15rem}.metrics-facts dd{margin:0;color:#334269;font-size:.82rem;font-weight:800}.metrics-error{color:#b13f54}.empty-state{display:grid;min-height:19rem;place-content:center;justify-items:center;padding:2rem;border-radius:8px;text-align:center}.empty-state h2{margin:.75rem 0 .45rem;font-size:1.2rem}.empty-state p{max-width:28rem;margin:0;color:#7180a2;line-height:1.55}.empty-icon{display:grid;width:3rem;height:3rem;place-content:center;border-radius:6px;background:#e1e9ff;color:#396afc;font-size:1.35rem}.vm-card-skeleton{min-height:15rem}.skeleton{display:block;border-radius:4px;background:linear-gradient(90deg,#edf1fa,#f8faff,#edf1fa);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-title{width:43%;height:1.3rem;margin-bottom:2.2rem}.skeleton-line{width:100%;height:.75rem;margin-top:.8rem}.skeleton-line.short{width:70%}@keyframes shimmer{to{background-position:-200% 0}}.overview-summary{display:grid;grid-template-columns:minmax(11rem,.8fr) minmax(0,1.4fr);gap:1.5rem;align-items:center;margin-bottom:1rem;padding:1.1rem 1.25rem;border-radius:8px}.overview-summary .eyebrow{margin-bottom:.1rem}.overview-summary strong{margin-right:.4rem;color:#111f4b;font-size:1.8rem;letter-spacing:-.04em}.overview-summary span{color:#7180a2;font-size:.8rem}.overview-summary>p{margin:0;color:#627093;font-size:.86rem;line-height:1.55}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.resource-card{min-height:10.5rem;padding:1rem;border-radius:8px}.resource-card .resource-key{overflow:hidden;margin-bottom:.7rem;color:#6383d3;font-size:.58rem;text-overflow:ellipsis;white-space:nowrap}.resource-card strong,.resource-count-unavailable{display:block;min-height:2rem;margin-bottom:.35rem;color:#396afc;font-size:1.85rem;font-weight:800;letter-spacing:-.05em}.resource-count-unavailable{color:#98a4bd}.resource-card h2{margin:0 0 .25rem;font-size:.98rem}.resource-card p{margin:0;color:#7180a2;font-size:.75rem;line-height:1.4}.admin-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.panel{padding:1.25rem;border-radius:8px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.6rem}.panel-heading .eyebrow{margin-bottom:.25rem}.panel-heading h2{margin:0;font-size:1.15rem}.panel-badge{flex:0 0 auto;padding:.32rem .48rem;border-radius:6px;background:#e1e9ff;color:#396afc;font-size:.65rem;font-weight:800;text-align:center}.panel>.muted{min-height:3.8rem;font-size:.82rem}.form-grid{display:grid;grid-template-columns:1fr;gap:.75rem;margin-top:1rem}.form-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}label{display:grid;gap:.35rem;color:#45547a;font-size:.76rem;font-weight:800}input,textarea{width:100%;min-height:2.55rem;padding:.58rem .7rem;border:1px solid #d5dced;border-radius:6px;outline:none;background:#fff;color:#111f4b;font-size:.84rem;transition:.2s}textarea{min-height:4.8rem;resize:vertical}input::placeholder,textarea::placeholder{color:#a4aec2}input:hover,textarea:hover{border-color:#9eb8fc}input:focus,textarea:focus{border-color:#396afc;box-shadow:0 0 0 3px #396afc1f}.checkbox-field{display:flex;align-items:center;gap:.58rem;padding:.25rem 0;font-size:.8rem}.checkbox-field input{width:1rem;min-height:1rem;accent-color:#396afc}.form-span-full{grid-column:1/-1}.optional{color:#8a96b0;font-weight:500}.vnc-target{min-height:min(72vh,48rem);overflow:hidden;border:4px solid white;border-radius:8px;background:#02060c;box-shadow:0 10px 24px #111f4b1f}.vnc-target canvas{display:block}@media(max-width:800px){.pre-header-inner,.topbar,.page-view{width:min(100% - 1.5rem,1180px)}.topbar{flex-wrap:wrap;height:auto;min-height:76px;padding:.8rem 0;gap:.75rem}.main-nav{order:3;width:100%;margin-left:0}.main-nav a{flex:1;text-align:center}.page-view{padding-top:2.3rem}.page-heading,.console-heading{align-items:flex-start;flex-direction:column;margin-bottom:1.4rem}.vm-grid,.admin-layout{grid-template-columns:1fr}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.pre-header-status{display:none}.session-button{padding:.55rem .6rem;font-size:.73rem}.page-heading h1{font-size:2.2rem}.vm-facts,.rdns-form,.reinstall-form,.form-grid-two,.overview-summary,.resource-grid{grid-template-columns:1fr}.overview-summary{gap:.7rem}.alert{align-items:flex-start;flex-direction:column}.panel>.muted{min-height:0}}
