/* sc-vps-upgrade-v1: "Plan" panel in the server window (Overview tab) + the upgrade confirm modal. */
#srv-modal-body[data-tab]:not([data-tab=overview]) #srv-upgrade{display:none}
.vu{margin:16px 0 4px;padding:14px 16px;border:1px solid var(--bdr);border-radius:12px;background:var(--surf,#0f1e32)}
.vu-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.vu-title{font-weight:700;font-size:.92rem;color:var(--ink);display:flex;align-items:center;gap:8px}
.vu-title i{color:var(--blue)}
.vu-cur{font-family:var(--mono);font-size:.74rem;color:var(--muted)}
.vu-note{font-size:.8rem;color:var(--muted);line-height:1.5;margin-top:10px}
.vu-note.ok{color:var(--grn)}
.vu-note.warn{color:var(--amber)}
.vu-note.err{color:var(--red)}
.vu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:12px}
.vu-opt{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid var(--bdr);border-radius:10px;background:var(--bg3,rgba(255,255,255,.02));min-width:0}
.vu-opt.is-off{opacity:.55}
.vu-opt__top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.vu-opt__name{font-weight:700;color:var(--ink);font-size:.95rem;letter-spacing:.02em}
.vu-opt__price{font-family:var(--mono);font-size:.8rem;color:var(--ink2,#9fb2c8)}
.vu-spec{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.vu-spec li{display:flex;justify-content:space-between;gap:8px;font-size:.78rem;color:var(--muted)}
.vu-spec b{font-family:var(--mono);font-weight:600;color:var(--ink)}
.vu-spec em{font-style:normal;font-family:var(--mono);font-size:.72rem;color:var(--grn)}
.vu-due{font-size:.76rem;color:var(--muted);border-top:1px solid var(--bdr);padding-top:8px}
.vu-due b{font-family:var(--mono);color:var(--ink);font-weight:600}
.vu-opt .btn{justify-content:center}
.vu-progress:empty{display:none}
.vu-progress{margin-top:10px}

/* confirm modal */
.vu-modal-box{max-width:480px}
.vu-m-title{font-size:1.05rem;font-weight:700;color:var(--ink);margin:0 0 4px}
.vu-m-sub{font-size:.8rem;color:var(--muted);margin-bottom:14px}
.vu-sum{border:1px solid var(--bdr);border-radius:10px;padding:4px 12px;margin-bottom:14px}
.vu-sum div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;font-size:.82rem;color:var(--muted)}
.vu-sum div+div{border-top:1px solid var(--bdr)}
.vu-sum b{font-family:var(--mono);color:var(--ink);font-weight:600;text-align:right}
.vu-when{display:grid;gap:8px;margin-bottom:14px}
.vu-when label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--bdr);border-radius:10px;cursor:pointer}
.vu-when label:has(input:checked){border-color:var(--blue-d);background:var(--blue-dim)}
.vu-when input{margin-top:3px;accent-color:var(--blue-d)}
.vu-when strong{display:block;font-size:.84rem;color:var(--ink)}
.vu-when span{display:block;font-size:.76rem;color:var(--muted);line-height:1.45;margin-top:2px}
.vu-card{display:none;padding:12px;border:1px solid var(--bdr2,rgba(255,255,255,.12));border-radius:10px;margin-bottom:12px;background:var(--bg,#060d18)}
.vu-card.on{display:block}
.vu-err{font-size:.8rem;color:var(--red);min-height:1.1em;margin-bottom:8px}
.vu-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
@media (max-width:560px){
  .vu{padding:12px}
  .vu-grid{grid-template-columns:1fr}
  .vu-actions .btn{flex:1;justify-content:center}
}
