/* GRID PRINCIPAL */
.vps-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
    margin: 20px 0;
    max-width: 100%;
}

/* TARJETA */
.vps-card {
    padding: 20px;
    border-radius: 12px;
    color: #fff;
    text-align: center;
    box-shadow: 0 3px 8px rgba(0,0,0,0.2);
    transition: transform 0.2s ease;
}

.vps-card:hover {
    transform: scale(1.03);
}

/* ESTADOS */
.vps-running {
    background: linear-gradient(135deg, #28a745, #218838);
}

.vps-stopped {
    background: linear-gradient(135deg, #dc3545, #b02a37);
}

/* BOTÓN */
.vps-btn {
    display: inline-block;
    margin-top: 15px;
    padding: 8px 18px;
    background: #fff;
    color: #333;
    border-radius: 6px;
    text-decoration: none;
    font-weight: bold;
}

.vps-btn:hover {
    background: #f1f1f1;
}

.vps-name {
    white-space: normal;        /* Permite varias líneas */
    word-break: normal;         /* No rompe palabras */
    overflow-wrap: break-word;  /* Solo rompe si es MUY largo */
    text-align: center;
    line-height: 1.3;
}

/******************************/
.pm-status-box {
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    max-width: 500px;
    margin-top: 20px;
}

.pm-status-row {
    margin: 10px 0;
    font-size: 15px;
}

.vps-btn {
    display: inline-block;
    margin-top: 10px;
    /*background: #3498db;
    color: #fff;*/
    padding: 6px 12px;
    border-radius: 6px;
    text-decoration: none;
}

.vps-btn:hover {
    background: #2980b9;
    color: #fff;
}
/**********************************/
.pm-login {
    max-width: 300px;
    margin: auto;
    background: #fff;
    padding: 20px;
    border-radius: 10px;
}

.pm-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(220px,1fr));
    gap: 15px;
}

.pm-card {
    padding: 15px;
    border-radius: 10px;
    color: #fff;
    text-align: center;
}

.pm-ok { background:#27ae60; }
.pm-down { background:#c0392b; }

.pm-btn {
    background:#fff;
    color:#000;
    padding:5px 10px;
    display:inline-block;
    margin-top:10px;
    border-radius:5px;
}


/************************************************/
.vps-detail-panel{
    width:100%;
    margin-top:30px;
}

.vps-detail-card{
    background:#111;
    border:2px solid #333;
    border-radius:12px;
    padding:20px;
}

.vps-detail-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
    gap:15px;
    margin-top:15px;
}

.vps-detail-grid div{
    background:#1c1c1c;
    padding:10px;
    border-radius:8px;
    text-align:center;
}


/***/
/* PANEL DETALLE */

.vps-detail-only{
    max-width:100% !important;
    width:100% !important;
}


/* TARJETA PRINCIPAL */

.vps-detail-card{
    background:#ffffff !important;
    border:1px solid #ddd !important;
    border-radius:12px;
    padding:25px;
    margin-top:20px;
    color:#222 !important;
}


/* TITULO */

.vps-detail-card h3{
    margin:0 0 15px;
    color:#111 !important;
}


/* GRID */

.vps-detail-grid{
    display:grid !important;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:18px;
    margin-top:20px;
}


/* BLOQUES INTERNOS */

.vps-detail-grid > div{
    background:#f5f7fa !important;
    padding:12px;
    border-radius:8px;
    text-align:center;
    font-size:14px;
    color:#222 !important;
    border:1px solid #e1e5ea;
}


/* TEXTO NEGRITA */

.vps-detail-grid strong{
    color:#000 !important;
}


/* BOTON REGRESAR */

.vps-back-btn{
    display:inline-block;
    background:#0073aa !important;
    color:#fff !important;
    padding:8px 14px;
    border-radius:6px;
    text-decoration:none;
    font-weight:600;
}

.vps-back-btn:hover{
    background:#005d88 !important;
}


/*buscador*/
.pm-search-box{
    margin-bottom:15px;
}

#pm-search{
    width:100%;
    max-width:400px;
    padding:8px 12px;
    border-radius:6px;
    border:1px solid #ccc;
    font-size:15px;
}
